pandas DataFrame, wie sich zu bewerben-Funktion zu einer bestimmten Spalte?
Habe ich die Dokumentation Lesen, der DataFrame.bewerben
DataFrame.apply(func, Achse=0, broadcast=False, raw=False, reduzieren=None, args=(), **kwds)¶
Gilt Funktion Eingang Achse des DataFrame.
So, Wie kann ich eine Funktion einer bestimmten Spalte?
In [1]: import pandas as pd
In [2]: data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
In [3]: df = pd.DataFrame(data)
In [4]: df
Out[4]:
A B C
0 1 4 7
1 2 5 8
2 3 6 9
In [5]: def addOne(v):
...: v += 1
...: return v
...:
In [6]: df.apply(addOne, axis=1)
Out[6]:
A B C
0 2 5 8
1 3 6 9
2 4 7 10
Möchte ich addOne jeder Wert in df['A']
werden nicht alle Spalten. Wie kann ich das machen mit DataFrame.apply
.
Danke für die Hilfe!
Vermeiden Sie die Verwendung
Das ist toll, gute Frage und die Antworten in der Tiefe.
apply
so viel wie möglich. Wenn Sie nicht sicher sind, müssen Sie es verwenden, werden Sie wahrscheinlich nicht. Ich empfehle einen Blick auf Wann sollte ich jemals verwenden möchten pandas gelten() in meinem code?.Das ist toll, gute Frage und die Antworten in der Tiefe.
InformationsquelleAutor GoingMyWay | 2016-03-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Antwort ist,
und vielleicht wäre es besser, zu wissen, über Unterschied von
map
,applymap
,apply
.aber wenn Sie darauf bestehen, zu verwenden
apply
Sie könnten versuchen, wie unten.can we apply same function at a time on both A and B.
Sicher, Sie können fügen Sie einfach v['B'] += 1 im addOne Funktion. Pandas gelten-Funktion wird jede Zeile als v, wenn Achse=1.
InformationsquelleAutor su79eu7k
Eine einfache Möglichkeit wäre:
InformationsquelleAutor felix_as