Ich habe ein Dataframe df, das tausende Zeilen hat.df.iloc [0: 1,:]. Apply (func, axis = 1, x, y, z) führt func() aus 2 mal
Für jede Zeile möchte ich Funktion func anwenden.
Als Test wollte ich func nur für die erste Zeile von df ausführen. In func()
legte ich eine Druckanweisung. Ich erkannte, dass die print-Anweisung zweimal ausgeführt wurde, obwohl ich df in eine Zeile zerschneide (es gibt eine zusätzliche Zeile für Spalten, aber das sind Spalten).
Wenn ich die folgende
df[0:1].apply(func, axis=1, x,y,z)
oder
df.iloc[0:1,:].apply(func, axis=1, x,y,z)
Die print-Anweisung Sie 2 mal ausgeführt wird, was bedeutet, func()
zweimal ausgeführt wurde.
Eine Idee, warum das passiert?
Mögliche Duplikat von [Warum Pandas gelten, berechnen Sie zweimal] (http://stackoverflow.com/questions/21635915/why-does-pandas-apply-calculate-twice) – root