消除Pandas中Fillna的错误

2024-09-28 20:54:06 发布

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

我尝试用以下内容填充数据框中列的NA值:

df1 = data.copy()
df1.columns = data.columns.str.lower()
df2 = df1[['passangerid', 'trip_cost','class']]
df2['class'] = df2['class'].fillna(0)
df2

尽管出现此错误:

:5: SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame. Try using .loc[row_indexer,col_indexer] = value instead

请参阅注意事项in the documentation

df2['class'] = df2['class'].fillna(0, axis = 0)

有人能帮忙吗


Tags: columns数据datavaluelowerclassdf1df2
1条回答
网友
1楼 · 发布于 2024-09-28 20:54:06

首先,我建议您遵循警告信息并阅读所提供链接中的注意事项

您会收到此警告(不是错误),因为df2是df1的一部分,而不是单独的数据帧

要避免收到此警告,可以使用.copy()方法,如下所示:

df2 = df1[['passangerid', 'trip_cost','class']].copy()

相关问题 更多 >