当前位置:  开发笔记 > 编程语言 > 正文

如何使用多个替代值创建蒙版(Pandas DataFrame)

如何解决《如何使用多个替代值创建蒙版(PandasDataFrame)》经验,为你挑选了1个好方法。

假设我们有一个f如下定义的Pandas DataFrame .我正在尝试创建一个掩码来选择列'xx'中值为'a'或'b'的所有行(我想选择第0,1,3,4行).

f = pd.DataFrame([['a', 'b','c','a', 'b','c'],['1', '2','3', '4', '5','6', ]])
f = f.transpose()
f.columns = ['xx', 'yy']
f

   xx   yy
0   a   1
1   b   2
2   c   3
3   a   4
4   b   5
5   c   6

在熊猫中有没有优雅的方法呢?我知道用f.xx =='a'选择所有行,我们可以做f [f.xx =='a'].虽然我还没弄清楚如何用f.xx选择行是'a'或'b'.谢谢.



1> Padraic Cunn..:

你可以使用isin

 print(f[(f["xx"].isin(("a","b")))])

哪个会给你:

  xx yy
0  a  1
1  b  2
3  a  4
4  b  5

如果你真的想要一个面具,你可以使用或|:

mask = (f["xx"] == "a") | (f["xx"] == "b")

print(f[mask])

哪个会给你相同的输出:

 xx yy
0  a  1
1  b  2
3  a  4
4  b  5

推荐阅读
个性2402852463
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有