Date Sin Ret
01/01/1990 True 0.03
01/02/1990 True 0.02
01/01/1990 False 0.01
01/02/1990 False 0.05
Ich möchteumformen eine Spalte basierend auf einer anderen Spalte in einem Pandas Datenrahmen
Date Ret1 Ret2
01/01/1990 0.03 0.01
01/02/1990 0.02 0.05
so dass ich
Date Ret1-Ret2
01/01/1990 0.02
01/02/1990 -0.03
bekommen Was ist der beste Weg, dies zu tun? Ich dachte darüber nach, Datum und Sünde als Index festzulegen und die Sünde zu entstapeln. Gibt es einen leichteren Weg?
Können Sie mir ein kurzes Beispiel geben, in dem man eindeutig besser ist als das andere? Ich hatte nie einen Anwendungsfall, in dem ich Pivot verwenden wollte (was nicht durch Stacks möglich ist), also weiß ich nicht wirklich, was es tut. – Lost1
Um Ihre Ausgabe zu erhalten, könnten Sie tun: "df.pivot (index = 'Datum', Spalten = 'Sin', Werte = 'Ret'). T.Diff(). Iloc [-1]' –
@ Lost1 To Ehrlich gesagt glaube ich nicht, dass es einen Unterschied gibt. Der Quellcode von [pivot] (https://github.com/pandas-dev/pandas/blob/master/pandas/core/reshape/reshape.py#L362) scheint darauf hinzudeuten, dass es unter der Haube als Indizierung/Entstapelung arbeitet Gut. – ayhan