2017-07-13 76 views
-1

写的时候我得到了著名SettingWithCopyWarning:与大熊猫SettingWithCopyWarning处理不索引

df['test'] = pd.factorize(df.test)[0] 

我已经试过

df.loc[:, 'test'] = pd.factorize(df.test)[0] 
df.loc[:, ('test')] = pd.factorize(df.test)[0] 
df[('test')] = pd.factorize(df.test)[0] 
df.loc[df.index.tolist(), 'test'] = pd.factorize(df.test)[0] 

但现在sucess,警告停留。我不确定我做错了什么或如何处理。这一点 - 以及与其他问题的区别 - 我做的不是想要使用索引器。

我也咨询http://pandas.pydata.org/pandas-docs/stable/indexing.html#returning-a-view-versus-a-copy没有成功。

+0

https://stackoverflow.com/questions/20625582/什么如何处理与设置在熊猫copywarning可能会帮助。 –

+0

你想用'factorize'做什么? –

+1

@AndrewL:这只是一个例子。问题是关于警告,而不是分解。 (我将不得不解释算法来解释,为什么我需要这个。) – Make42

回答

0

如果你唯一的问题是要删除警告,也许尝试:

pd.options.mode.chained_assignment = None 

不改变不显示警告旁边