Pandas: verschiedene Funktionen auf verschiedene Spalten anwenden

Wenn ich df.mean () verwende, erhalte ich ein Ergebnis, in dem der Mittelwert für jede Spalte angegeben ist. Angenommen, ich möchte den Mittelwert der ersten und die Summe der zweiten Spalte. Gibt es eine Möglichkeit, dies zu tun? Ich möchte den Datenrahmen nicht zerlegen und wieder zusammenbauen müssen.

Meine ursprüngliche Idee war, etwas in der Art von pandas.groupby.agg () zu tun:

df = pd.DataFrame(np.random.random((10,2)), columns=['A','B'])
df.apply({'A':np.mean, 'B':np.sum}, axis=0)

Traceback (most recent call last):

  File "<ipython-input-81-265d3e797682>", line 1, in <module>
    df.apply({'A':np.mean, 'B':np.sum}, axis=0)

  File "C:\Users\Patrick\Anaconda\lib\site-packages\pandas\core\frame.py", line 3471, in apply
    return self._apply_standard(f, axis, reduce=reduce)

  File "C:\Users\Patrick\Anaconda\lib\site-packages\pandas\core\frame.py", line 3560, in _apply_standard
    results[i] = func(v)

TypeError: ("'dict' object is not callable", u'occurred at index A')

Aber klar funktioniert das nicht. Die Übergabe eines Diktats scheint eine intuitive Möglichkeit zu sein, aber gibt es eine andere Möglichkeit (erneut, ohne den DataFrame zu zerlegen und wieder zusammenzusetzen)?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage