如何从数据框中提取行,仅当一列的值高于另一列的值时?
我有一个这样的数据表:
df = pd.DataFrame({'a': [100, 200, 300, 400],
'b': [80, 250, 500, 350]})
print(df)
a b
0 100 80
1 200 250
2 300 500
3 400 350
我想提取那些只有当'a'这一列的值大于'b'这一列的值时的行。
所以在我的例子中,我应该得到这个结果的数据表:
a b
0 100 80
3 400 350
谢谢
2 个回答
0
试试这个:
print(df.query("a > b"))
输出结果是:
a b
0 100 80
3 400 350
0
在编程中,有时候我们会遇到一些问题,特别是在使用某些工具或库的时候。这些问题可能会让我们感到困惑,不知道该怎么解决。比如,有人可能在使用某个功能时,发现它没有按照预期工作,或者出现了错误信息。这种情况下,通常我们会去网上查找解决方案,像是StackOverflow这样的平台就是一个很好的资源。
在这些平台上,很多人会分享他们遇到的问题和解决办法。你可以看到其他人是怎么描述他们的问题的,以及他们是如何解决的。这不仅能帮助你找到答案,还能让你学习到一些新的知识和技巧。
总之,遇到问题时,不要害怕去寻求帮助,网上有很多资源可以让你找到解决方案。记得多看看别人的经验,这样你会学得更快。
df = pd.DataFrame({'a': [100, 200, 300, 400],
'b': [80, 250, 500, 350]})
# Result
df.loc[df['a']>df['b'],:]