我有一个名为df
的数据帧,其列为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
为什么会收到此警告?
P.S:我在堆栈溢出时也看过类似的问题,但找不到答案