数据分析Pandas SettingWithCopyWarning

时间:2017-06-18 23:57:47

标签: python python-3.x ipython jupyter-notebook data-analysis

 numbers = LabelEncoder()
 State_Data['Quality'] = numbers.fit_transform(State_Data['Quality 
 Parameter'].astype('str'))

 this is generating the following error :

 /opt/conda/lib/python3.5/site-packages/ipykernel/__main__.py:1: 
 SettingWithCopyWarning: 
 A value is trying to be set on a copy of a slice from a DataFrame.
 Try using .loc[row_indexer,col_indexer] = value instead

我在对水质数据集进行分析时遇到此错误并且无法解决它。它建议使用.loc但是我也尝试过这样做而且它并没有这样做。也工作。    请告诉我如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

使用其他变量存储转换后的数据总是更好。您可以尝试使用以下代码来避免出现警告:

transformed = numbers.fit_transform(State_Data['Quality Parameter'].astype('str'))

State_Data['Quality_transformed'] = transformed

使用这种方法,不仅可以帮助您避免警告,而且也不会修改实际的原始数据,修改原始数据有时会带来问题,因为如果在此过程中出现任何问题,您可能不得不再次运行整个脚本。 / p>