Ich habe eine Reihe von Daten, wo einige Datensätze eine Zeile 'null'
enthält, die korrigiert werden müssen.Python: So ändern Sie Daten mit Null in Pandas
Es gibt die Regel, um die Daten in pandas
Datenrahmen zu korrigieren.
Wenn Volume
null
ist, wechseln Sie in0
.Open
,High
,Low
,Close
folgen dem Schließen des Vortages. Mittlere2016-6-29
die hatnull
wird Schließen von2016-6-28
folgen, die0.6
istWenn die erste Zeile leer ist, wird es
volume = 0
undOpen
,high
,Low
Close
, folgen Sie den nächsten Tag öffnen Wert.>>df_a Date,Stock,Open,High,Low,Close,Adj Close,Volume 2016-06-22,AWG,0.600000,0.600000,0.600000,0.600000,0.600000,0 2016-06-23,AWG,0.600000,0.600000,0.600000,0.600000,0.600000,0 2016-06-24,AWG,0.600000,0.600000,0.600000,0.600000,0.600000,0 2016-06-27,AWG,0.600000,0.600000,0.600000,0.600000,0.600000,800 2016-06-28,AWG,0.600000,0.600000,0.600000,0.600000,0.600000,0 2016-06-29,AWG,null,null,null,null,null,null 2016-06-30,AWG,null,null,null,null,null,null 2016-07-01,AWG,0.620000,0.650000,0.620000,0.650000,0.650000,40000 2016-07-04,AWG,null,null,null,null,null,null 2016-07-05,AWG,null,null,null,null,null,null 2016-07-07,AWG,0.625000,0.650000,0.565000,0.650000,0.650000,3000 2016-07-08,AWG,0.650000,0.650000,0.650000,0.650000,0.650000,0 2016-07-11,AWG,0.650000,0.650000,0.605000,0.605000,0.605000,6000 2016-07-12,AWG,0.640000,0.640000,0.640000,0.640000,0.640000,3300 >>df_b Date,Stock,Open,High,Low,Close,Adj Close,Volume 2016-06-10,WG,null,null,null,null,null,null 2016-06-13,WG,null,null,null,null,null,null 2016-06-14,WG,0.600000,0.600000,0.600000,0.600000,0.600000,1000 2016-06-15,WG,0.600000,0.600000,0.600000,0.600000,0.600000,2000 2016-06-16,WG,0.600000,0.600000,0.600000,0.600000,0.600000,0 2016-06-17,WG,0.600000,0.600000,0.600000,0.600000,0.600000,0 2016-06-20,WG,0.600000,0.600000,0.600000,0.600000,0.600000,0 2016-06-21,WG,0.600000,0.600000,0.600000,0.600000,0.600000,0 2016-06-22,WG,0.600000,0.600000,0.600000,0.600000,0.600000,0 2016-06-23,WG,0.600000,0.600000,0.600000,0.600000,0.600000,0 2016-06-24,WG,0.600000,0.600000,0.600000,0.600000,0.600000,0 2016-06-27,WG,0.600000,0.600000,0.600000,0.600000,0.600000,800 2016-06-28,WG,0.600000,0.600000,0.600000,0.600000,0.600000,0 2016-06-29,WG,null,null,null,null,null,null 2016-06-30,WG,null,null,null,null,null,null 2016-07-01,WG,0.620000,0.650000,0.620000,0.650000,0.650000,40000 2016-07-04,WG,null,null,null,null,null,null 2016-07-05,WG,null,null,null,null,null,null
Teil meiner Code:
volume = df_a['Volume'] == 'null'
df_a.loc[volume,'Volume'] = 0
Allerdings habe ich nicht in der Lage für Open
, High
, Low
und Close
fortzusetzen.
'df.l oc [0] 'return' TypeError: kann die Indexindizierung für nicht mit diesen Indexern [0] von ' –
@hehappy durchführen Siehe, ob die Bearbeitung funktioniert –
' df.iloc [0] .fillna (df.iloc [1] .Open, inplace = True) 'muss auch funktionieren –