📅  最后修改于: 2023-12-03 15:23:14.893000             🧑  作者: Mango
Pandas 是 Python 中用于数据处理和分析的强大工具。在 Pandas 中,经常需要对数据中的列进行操作,而获取列的子字符串则是其中重要的一项。
Pandas 中的列数据类型为 Series,获取列的子字符串可以使用 Series 的 .str 方法。下面是一个简单的例子:
import pandas as pd
data = {"name": ["Alice", "Bob", "Charlie"], "age": [25, 30, 35], "email": ["alice@example.com", "bob@example.com", "charlie@example.com"]}
df = pd.DataFrame(data)
print(df["email"].str[:5])
上述代码中,我们定义了一个数据帧 df,其中 email 列包含了邮箱地址。使用 .str 方法,我们可以获取 email 列的前五个字符。
输出结果如下:
0 alice
1 bob
2 charl
Name: email, dtype: object
除了 .str 方法,还可以使用正则表达式来获取列的子字符串。下面是一个例子:
import pandas as pd
data = {"name": ["Alice", "Bob", "Charlie"], "age": [25, 30, 35], "email": ["alice@example.com", "bob@example.com", "charlie@example.com"]}
df = pd.DataFrame(data)
df["username"] = df["email"].str.extract(r"(.*?)@")
print(df)
上述代码中,我们使用了 .str.extract 方法和正则表达式,以提取邮箱地址中的用户名。
输出结果如下:
name age email username
0 Alice 25 alice@example.com alice
1 Bob 30 bob@example.com bob
2 Charlie 35 charlie@example.com charlie
Pandas 提供了多种方法来获取列的子字符串,包括字符串截取和正则表达式。这些方法在数据分析和处理中非常常见,建议掌握好这些技巧。