我不明白 pandas
DataFrame
filter
。
设置
import pandas as pd
df = pd.DataFrame(
[
['Hello', 'World'],
['Just', 'Wanted'],
['To', 'Say'],
['I\'m', 'Tired']
]
)
问题
df.filter([0], regex=r'(Hel|Just)', axis=0)
我希望 [0]
将第一列指定为要查看的列,并且 axis=0
指定过滤行。我得到的是:
0 1
0 Hello World
我在期待
0 1
0 Hello World
1 Just Wanted
问题
- 什么会让我得到我所期望的?
原文由 piRSquared 发布,翻译遵循 CC BY-SA 4.0 许可协议
根据 文档,
因此,看起来,第一个可选参数
items=[0]
胜过第三个可选参数regex=r'(Hel|Just)'
。相当于
这只是选择索引值在
[0]
沿 0 轴的行。要获得所需的结果,您可以使用
str.contains
创建布尔掩码,并使用df.loc
选择行: