为什么Pandas只给我一个SettingWithCopyWarning?

时间:2016-01-15 21:17:38

标签: python pandas warnings

我有以下代码:

import pandas as pd
import numpy as np
mydf = pd.DataFrame({'UID':[1,2,3],
                     'Price':[10,20,30],
                     'Shipped':[2,4,6]})
grouped = mydf.groupby('UID').aggregate(np.sum)
# Call 1
mydf['Price'].loc[:] = np.round(grouped['Price'], 2)
# Call 2
mydf['Shipped'].loc[:] = grouped['Shipped']

我前面有Call 1的行没有错误或警告。我前面有Call 2的行会导致SettingWithCopyWarning错误。为什么一个导致错误而不是另一个?为了摆脱这个错误,我可以在第二次通话中做些什么?

我的代码执行得很好,我只是厌倦了每次运行测试时都会看到这一个错误。

1 个答案:

答案 0 :(得分:1)

没有SettingWithCopyWarning错误

mydf['Shipped'].values[:] = grouped['Shipped']