如何在熊猫中分配切片

时间:2020-01-23 20:42:46

标签: python pandas dataframe slice

我有一个如图所示的熊猫数据框 df

   col1  col2
0   NaN     a
1     2     b
2   NaN     c
3   NaN     d
4     5     e
5     6     f

我想在col1中找到第一个NaN值,并为其分配一个新值。我已经尝试了以下两种方法,但是它们都不起作用。

df.loc[df['col'].isna(), 'col1'][0] = 1

df.loc[df['col'].isna(), 'col1'].iloc[0] = 1

它们两个都没有显示任何错误或警告。但是当我检查原始数据帧的值时,它没有改变。

正确的方法是什么?

1 个答案:

答案 0 :(得分:0)

您可以将.fillna()limit=1参数一起使用:

df['col1'].fillna(1, limit=1, inplace=True)

print(df)

打印:

   col1 col2
0   1.0    a
1   2.0    b
2   NaN    c
3   NaN    d
4   5.0    e
5   6.0    f