如何在为现有df创建新列时摆脱settingWithCopyWarning

时间:2018-11-28 21:31:18

标签: python pandas dataframe warnings

我正在尝试在pandas中的df中添加新列,但是当我使用以下2种方法的凋谢器时,以某种方式在执行后都导致相同的警告消息。有没有一种方法可以避免这些问题而无需复制dp

原始df:

*100

方法1:

$amount = (int)($data[0]['amount'] * 100);

警告信息

  

C:\ Users \ 5150224 \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ ipykernel_launcher.py:3:   SettingWithCopyWarning:试图在一个副本上设置一个值   从DataFrame切片。尝试使用.loc [row_indexer,col_indexer] =   值代替

     

请参阅文档中的警告:   http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy   这与ipykernel软件包分开,因此我们可以避免这样做   直到进口

方法2:

match_all = match[['country_id','league_id','season','stage','date','home_team_api_id','away_team_api_id','home_team_goal'
                     ,'away_team_goal']]

警告消息:

  

C:\ Users \ 5150224 \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ ipykernel_launcher.py:1:   SettingWithCopyWarning:试图在一个副本上设置一个值   从DataFrame切片。尝试使用.loc [row_indexer,col_indexer] =   值代替

     

请参阅文档中的警告:   http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy   “”“启动IPython内核的入口点

0 个答案:

没有答案