gpt4 book ai didi

python - 更新查询返回的索引处的数据帧

转载 作者:行者123 更新时间:2023-12-01 09:19:13 25 4
gpt4 key购买 nike

我希望查询返回一个 View ,以便我可以修改字段而不会生成此错误。

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

See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy

我有一个多行(长)查询q,我在此处缩写为:

df1 = pd.Dataframe(...)
q = "tcpstream==1 and ipsrc=='10.0.0.1' and sport==5201"
df = df1.query(q)
df['dest'] = "toto" # <--- this generates the warning/error

显然我可以执行 df1.update(df) 但这似乎很浪费,我正在寻找更有效的方法。

最佳答案

pd.DataFrame.query旨在查询,而不是设置值。如果你想使用字符串查询作为掩码,你可以计算索引并输入 pd.DataFrame.loc :

df.loc[df.query(q).index, 'dest'] = 'toto'

关于python - 更新查询返回的索引处的数据帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50943414/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com