df_feat.iloc[9]['id2694_feat17'] = df_ner.iloc[9][fill_dic.get('id2694_feat17')].values这一句为什么写错了,报了警告SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame
时间: 2024-04-13 12:30:46 浏览: 83
pandas数据选取:df[] df.loc[] df.iloc[] df.ix[] df.at[] df.iat[]
你在使用`.iloc`进行赋值操作时出现了警告。这个警告通常是由于对切片返回的视图进行了赋值操作,而不是对原始DataFrame进行的。为了避免这个警告,你可以使用`.loc`来进行赋值操作。
你可以将代码修改如下:
```python
df_feat.loc[9, 'id2694_feat17'] = df_ner.loc[9, fill_dic.get('id2694_feat17')]
```
使用`.loc`来直接对选定的行和列进行赋值操作,避免了SettingWithCopyWarning警告。请确保你的`df_feat`和`df_ner`都是正确的DataFrame对象,并且'9'和'fill_dic.get('id2694_feat17')'分别表示行索引和列索引。
阅读全文