首页 > 解决方案 > 为什么我得到“试图在数据帧的切片副本上设置一个值”

问题描述

我有一个名为df, 与 column的数据框A。我执行以下代码:

df['A'][df['A'] < 4] = np.NaN

我收到以下消息:

A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
df['A'][df['A'] < 4] = np.NaN
bla.py:763: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

代码有效,df执行此行后更改,因此在实践中它不会尝试更改df原始文件的副本df

为什么我会收到此警告?

PS:我查看了有关堆栈溢出的类似问题,但找不到答案

标签: pythonpandasdataframe

解决方案


推荐阅读