[英]Filling up "None" values in pandas dataframe with values from previous column
[英]Filling None values in the dataframe in rows Pandas Python
數據如下:
o h l c
Time
2018-10-12 09:35:00 1.15868 1.15890 1.15868 1.15884
2018-10-12 09:36:00 1.15887 1.15889 1.15869 1.15869
2018-10-12 09:37:00 1.15869 1.15890 1.15869 1.15883
2018-10-12 09:38:00 1.15883 1.15894 1.15881 1.15888
2018-10-12 09:39:00 1.15888 1.15903 1.15887 1.15894
我試圖用Nan
值替換完整的行,只保留一個。 因此,上述數據框的最終輸出必須是這樣的:
o h l c
Time
nan nan nan nan
nan nan nan nan
nan nan nan nan
nan nan nan nan
2018-10-12 09:39:00 1.15888 1.15903 1.15887 1.15894
我嘗試以下操作,並在嘗試操作時出錯:
df.fillna(inplace=True,value=None)
ValueError: must specify a fill method or value
我想知道如何填充前四行的nan值嗎?
請讓我知道我能做什么。
使用iloc
:
df.iloc[:-1] = np.nan
print (df)
o h l c
Time
2018-10-12 09:35:00 NaN NaN NaN NaN
2018-10-12 09:36:00 NaN NaN NaN NaN
2018-10-12 09:37:00 NaN NaN NaN NaN
2018-10-12 09:38:00 NaN NaN NaN NaN
2018-10-12 09:39:00 1.15888 1.15903 1.15887 1.15894
對於索引中缺少的值:
df = df.set_index(np.append([np.nan] * (len(df)-1), df.index[-1])).rename_axis(df.index.name)
print (df)
o h l c
Time
NaT NaN NaN NaN NaN
NaT NaN NaN NaN NaN
NaT NaN NaN NaN NaN
NaT NaN NaN NaN NaN
2018-10-12 09:39:00 1.15888 1.15903 1.15887 1.15894
另一個想法:
df1 = pd.DataFrame(index=df.index, columns=df.columns, data=df.iloc[[-1]])
print (df1)
o h l c
Time
2018-10-12 09:35:00 NaN NaN NaN NaN
2018-10-12 09:36:00 NaN NaN NaN NaN
2018-10-12 09:37:00 NaN NaN NaN NaN
2018-10-12 09:38:00 NaN NaN NaN NaN
2018-10-12 09:39:00 1.15888 1.15903 1.15887 1.15894
df1 = pd.DataFrame(index=np.append([np.nan] * (len(df)-1), df.index[-1]),
columns=df.columns,
data=df.iloc[[-1]]).rename_axis(df.index.name)
print (df1)
o h l c
Time
NaT NaN NaN NaN NaN
NaT NaN NaN NaN NaN
NaT NaN NaN NaN NaN
NaT NaN NaN NaN NaN
2018-10-12 09:39:00 1.15888 1.15903 1.15887 1.15894
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.