Pandas菲娜不工作

2024-05-13 17:41:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个包含nans的数据帧:

>>>df.head()
Out[1]: 
            JPM US SMALLER COMPANIES C ACC
1990-01-02                             NaN
1990-01-03                             NaN
1990-01-04                             NaN
1990-01-05                             NaN
1990-01-08                             NaN

我有另一个数据框,其中包含值:

>>>t.head()
Out[1]: 
1990-01-02    51.95
1990-01-03    52.63
1990-01-04    53.04
1990-01-05    52.07
1990-01-08    51.73
Name: JPM US SMALLER COMPANIES C ACC, dtype: float64

不幸的是,df.fillna似乎不适合我:

>>>df.fillna( t ).head()
Out[1]: 
            JPM US SMALLER COMPANIES C ACC
1990-01-02                             NaN
1990-01-03                             NaN
1990-01-04                             NaN
1990-01-05                             NaN
1990-01-08                             NaN

[5 rows x 1 columns]

为什么会这样?我吃熊猫0.13.1


Tags: 数据namedfnanoutheadaccus
3条回答

你有两个选择:

1)针对每一列

cols_fillna = ['column1','column2','column3']
# replace 'NaN' with zero in these columns
 for col in cols_fillna:
     df[col].fillna(0,inplace=True)
     df[col].fillna(0,inplace=True)

2)对于整个数据帧

df = df.fillna(0)

你需要inplace

df[1].fillna(0, inplace=True)

您需要分配值df = df.fillna( t )

相关问题 更多 >