📅  最后修改于: 2023-12-03 15:10:51.475000             🧑  作者: Mango
在 Pandas 中,如果我们需要检查 DataFrame 的某一列是否以给定的字符串开头,我们可以使用 str.startswith()
方法。该方法接受一个字符串参数,如果该列中的字符串以该参数开头,则返回 True,否则返回 False。
import pandas as pd
# 创建示例 DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Emma'],
'Age': [25, 30, 35, 40, 45],
'City': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen', 'Wuhan']}
df = pd.DataFrame(data)
# 检查 Name 列是否以 'A' 开头
result = df['Name'].str.startswith('A')
print(result)
输出结果:
0 True
1 False
2 False
3 False
4 False
Name: Name, dtype: bool
上面的代码中,我们使用 str.startswith()
方法检查 Name 列是否以 'A' 开头,结果保存在变量 result
中。在输出结果时,我们可以看到第一行的 Name 是以 'A' 开头的,因此对应的值为 True,其余行不是以 'A' 开头,因此对应的值为 False。
除了传入单个字符串参数,str.startswith()
方法还可以传入一个字符串列表,用于检查列中字符串是否以列表中任何一个字符串开头,如果是则返回 True,否则返回 False。
import pandas as pd
# 创建示例 DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Emma'],
'Age': [25, 30, 35, 40, 45],
'City': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen', 'Wuhan']}
df = pd.DataFrame(data)
# 检查 Name 列是否以 'A' 或 'C' 开头
result = df['Name'].str.startswith(['A', 'C'])
print(result)
输出结果:
0 True
1 False
2 True
3 False
4 False
Name: Name, dtype: bool
上面的代码中,我们传入了一个字符串列表 ['A', 'C'],因此 str.startswith()
方法检查 Name 列是否以 'A' 或 'C' 开头,结果保存在变量 result
中。可以看到第一和第三行的 Name 是以 'A' 或 'C' 开头的,因此对应的值为 True,其余行不是以 'A' 或 'C' 开头,因此对应的值为 False。