2015-11-16 26 views

回答

1

最简单的修复方法(也许是很好的编程习惯)是不进行就地操作,例如

df2 = df.rename(columns={'one':'one_a'}) 
+0

,如果我这样做? df = df.rename(columns = {'one':'one_a'}) –

+0

如果我保留它,可以忽略这些情况下的警告吗? –

+0

可以忽略它,但我建议你为'df.columns'分配一个新列名称的列表。基本上,'df.columns = ['list','of','new','names']'。对于'df.drop',最好写'df = df.loc [:,['columns','to','keep']] copy()' – Kartik

1

我有一个类似的问题和解决我做了以下内容:

new_df = df.copy() 
new_df.rename(columns={'one':'one_a'}, inplace=True) 
new_df.drop(['one', 'two', 'three'], axis=1, inplace=True) 

或者你也可以做

df.is_copy = False 

你可能使用你原来的DF(例如副本:在你之前你操纵你的DF),这就是你收到警告的原因。更多关于副本:

why should I make a copy of a data frame in pandas