加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 将数据帧列与系列进行比较

发布时间:2020-12-20 12:13:45 所属栏目:Python 来源:网络整理
导读:我有一个数据框和一个系列,并希望将DF列与系列进行比较. Dataframe(df)看起来像: 1 1 4 72 2 3 13 2 3 9 系列看起来像: 1 32 4 3 2 想要进行布尔比较(其中列值小于系列值): 1 T F F2 T T T3 F F F 当然我可以做一个循环,但应该有更简单的方法来做到这一点
我有一个数据框和一个系列,并希望将DF列与系列进行比较.

Dataframe(df)看起来像:

1   1 4 7
2   2 3 1
3   2 3 9

系列看起来像:

1   3
2   4 
3   2

想要进行布尔比较(其中列值小于系列值):

1   T F F
2   T T T
3   F F F

当然我可以做一个循环,但应该有更简单的方法来做到这一点?

解决方法

使用lt,您可以指定轴.

df.lt(s,axis=0)

       1      2      3                   
1   True  False  False
2   True   True   True
3  False  False  False

默认情况下,轴为1,并使用重载运算符<并没有给你那么多的灵活性.正如评论中提到的DYZ,将轴默认设置为1是一个例外,因为它通常默认为0(在其他函数中,例如apply和transform). 如果系列和数据框索引没有很好地对齐,你仍然可以通过比较s.values来解决这个问题.

df.lt(s.values,axis=0)

       1      2      3                   
1   True  False  False
2   True   True   True
3  False  False  False

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读