我知道视图与复制问题以及Pandas显示警告的原因。这让我更加小心使用loc,.ix等,而不是链式索引。
然而,当我确信我不应该这样做时,我会发出警告。我有一个包含我的数据的数据帧“df”,我有一个函数:
def my_func(df):
df['new_channel'] = df.channel.diff()
return df
如果我运行此功能,我不会收到任何警告。但是,如果我然后从我原来的数据框中定义一个新的数据框:
df2 = df.ix[df.channel==val,:]
调用该函数:
my_func(df2)
然后生成复制警告。但我的理解是,我没有在我的函数中使用任何链式索引,我没有使用链式索引来创建第二个数据帧。
这是误报 - 即我可以关闭警告并继续进行。或者我错过了一些可能会在未来咬我的更基本的东西?
本