import pandas as pd
data = [['Alex',10],['Bob',12],['Clarke',13] ['Adam', 14]]
df = pd.DataFrame(data,columns=['Name','Age'])
print(df)
Name Age
0 Alex 10
1 Bob 12
2 Clarke 13
3 Adam 14
我只想获取以A开头的名称。我尝试了以下代码 mask = df ['Name']。str.contains(“ A *”)
mask
0 True
1 True
2 True
Name: Name, dtype: bool
df = df[mask]
Name Age
0 Alex 10
1 Bob 12
2 Clarke 13
但是我想得到结果 名字年龄
0 Alex 10
答案 0 :(得分:3)
使用此:
mask = df['Name'].str.startswith("A")
例如:
In [52]: df
Out[52]:
Name Age
0 Alex 10
1 Bob 12
2 Clarke 13
3 Adam 14
In [53]: mask = df['Name'].str.startswith("A")
In [54]: df[mask]
Out[54]:
Name Age
0 Alex 10
3 Adam 14
对于正则表达式匹配,如@swiftg所示:
mask = df['Name'].str.match("^A.*")