关于pandas一些warning的解决办法

See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  df_1_level['level1_name'] = df_1_level['department_name']
crawlJDYcontacts.py:113: 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

将:

>>> df_1_level['level1_name'] = df_1_level['department_name']

改为:

>>> df_1_level.loc[:,'level1_name'] = df_1_level['department_name'].copy()

具体原因:
https://zhuanlan.zhihu.com/p/41202576


See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  df_1_level['level1_code'] = df_1_level['department_code']
crawlJDYcontacts.py:116: FutureWarning: Sorting because non-concatenation axis is not aligned. A future version
of pandas will change to not sort by default.

To accept the future behavior, pass 'sort=False'.

To retain the current behavior and silence the warning, pass 'sort=True'.

将:

>>> df_depart_5_level = pd.concat([df_1_level, df_2_level, df_3_level, df_4_level, df_5_level])

改为:

>>> df_depart_5_level = pd.concat([df_1_level, df_2_level, df_3_level, df_4_level, df_5_level], sort=True)

具体原因:
https://stackoverflow.com/a/50501889/7151777

你可能感兴趣的:(数据处理,Python)