【发布时间】:2022-08-06 12:22:13
【问题描述】:
我正在使用map_partitions 替换dask 数据框中的id2 列。结果是这些值被替换但带有pandas 警告。
这是什么警告以及如何在下面的示例中应用 .loc 建议?
pdf = pd.DataFrame({
\'dummy2\': [10, 10, 10, 20, 20, 15, 10, 30, 20, 26],
\'id2\': [1, 1, 1, 2, 2, 1, 1, 1, 2, 2],
\'balance2\': [150, 140, 130, 280, 260, 150, 140, 130, 280, 260]
})
ddf = dd.from_pandas(pdf, npartitions=3)
def func2(df):
df[\'id2\'] = df[\'balance2\'] + 1
return df
ddf = ddf.map_partitions(func2)
ddf.compute()
C:\\Users\\xxxxxx\\AppData\\Local\\Temp\\ipykernel_30076\\248155462.py:2: SettingWithCopyWarning:试图在一个副本上设置一个值 从 DataFrame 切片。尝试使用 .loc[row_indexer,col_indexer] = 取而代之的是价值
请参阅文档中的警告: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy df[\'id2\'] = df[\'balance2\'] + 1
标签: python pandas dataframe dask dask-dataframe