Python 用列名填充 NaN 的 Dataframe 问题
Python Dataframe issue of filling NaN with column name
我希望我的数据框在具有其他列值的列中填充 NaN。但是,我的数据框用列名而不是它的值填充 NaN 。它很奇怪。我不知道。为什么。
df=
colA colB
2018-11-20 06:57:30 NaN 20.60646
2018-11-20 06:57:45 NaN 23.96100
2018-11-20 06:58:00 NaN 27.31554
2018-11-20 06:58:15 NaN 30.67008
2019-05-22 18:45:00 20.07324 20.76620
2019-05-22 18:45:15 19.92117 20.44672
2019-05-22 18:45:30 19.61703 20.12724
df['colA'].fillna('colB',inplace=True)
print(df)
df=
colA colB
2018-11-20 06:57:30 colB 20.60646
2018-11-20 06:57:45 colB 23.96100
2018-11-20 06:58:00 colB 27.31554
2018-11-20 06:58:15 colB 30.67008
2019-05-22 18:45:00 20.07324 20.76620
2019-05-22 18:45:15 19.92117 20.44672
2019-05-22 18:45:30 19.61703 20.12724
你需要'.'运算符或列名作为索引运算符的字符串。
df['colA'].fillna(df.colB,inplace=True)
df['colA'].fillna(df['colB'],inplace=True)
我希望我的数据框在具有其他列值的列中填充 NaN。但是,我的数据框用列名而不是它的值填充 NaN 。它很奇怪。我不知道。为什么。
df=
colA colB
2018-11-20 06:57:30 NaN 20.60646
2018-11-20 06:57:45 NaN 23.96100
2018-11-20 06:58:00 NaN 27.31554
2018-11-20 06:58:15 NaN 30.67008
2019-05-22 18:45:00 20.07324 20.76620
2019-05-22 18:45:15 19.92117 20.44672
2019-05-22 18:45:30 19.61703 20.12724
df['colA'].fillna('colB',inplace=True)
print(df)
df=
colA colB
2018-11-20 06:57:30 colB 20.60646
2018-11-20 06:57:45 colB 23.96100
2018-11-20 06:58:00 colB 27.31554
2018-11-20 06:58:15 colB 30.67008
2019-05-22 18:45:00 20.07324 20.76620
2019-05-22 18:45:15 19.92117 20.44672
2019-05-22 18:45:30 19.61703 20.12724
你需要'.'运算符或列名作为索引运算符的字符串。
df['colA'].fillna(df.colB,inplace=True)
df['colA'].fillna(df['colB'],inplace=True)