程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何通过匹配数据框中的行值来更改列值?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决如何通过匹配数据框中的行值来更改列值??

开发过程中遇到如何通过匹配数据框中的行值来更改列值?的问题如何解决?下面主要结合日常开发的经验,给出你关于如何通过匹配数据框中的行值来更改列值?的解决方法建议,希望对你解决如何通过匹配数据框中的行值来更改列值?有所启发或帮助;

假设我有下表

经度 纬度 温度 标签
x y z 1
p q r 2
b c 1
k l 1

我将表存储在 df 中并运行以下数据片段查询。

df1= df.query('longitude == @x and latitude == @y and temperature== @z')

主要是我得到了正确的输出。

现在我想更改查询匹配的行的标签值

df.query('longitude == a and latitude == b and temperature== c')

如何更新查询行匹配的标签值。我尝试使用 .replace 、 .iloc 但它们都没有给我正确的结果。

解决方法

这里应该使用掩码:

df = pd.DataFrame(
    {
        "longitude": ["x","p","a","k"],"latitude": ["y","q","b","l"],"temperature": ["z","r","c","m"],"label": [1,2,1,1],}
)

new_label = 3

df["label"] = df["label"].mask(
    (df["longitude"] == "a") & (df["latitude"] == "b") & (df["temperature"] == "c"),new_label,)
df
经度 纬度 温度 标签
x y z 1
p q r 2
b c 3
k l 1

大佬总结

以上是大佬教程为你收集整理的如何通过匹配数据框中的行值来更改列值?全部内容,希望文章能够帮你解决如何通过匹配数据框中的行值来更改列值?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: