在pandas DataFrame中使用regex将一个字符串分割成若干列

  • Post category:Python

在 Pandas 中使用 regex(正则表达式)将一个字符串分割成若干列,可以使用 str.split() 方法。下面是使用步骤的详细解释。

步骤一:导入 Pandas 模块

首先,需要导入 Pandas 模块。通常,我们使用以下语句来完成导入:

import pandas as pd

步骤二:创建 DataFrame

接下来,需要创建一个 DataFrame 对象,用于存放需要分割的字符串。这可以通过传递一个字典对象来完成,每个键都是列名,每个值都是这个列的一组数据。

data = {"Full Name": ["Alice Liddell", "Bob Smith", "Charlie Brown"]}
df = pd.DataFrame(data)

步骤三:使用 split() 方法分割字符串

现在,我们可以使用 str.split() 方法将字符串分割成若干列。我们将使用 str.split() 方法来将 Full Name 列拆分成 First Name 和 Last Name 两列。

df[["First Name", "Last Name"]] = df["Full Name"].str.split(expand=True)

这里,我们将 str.split() 方法的 expand 参数设置为 True,表示将结果作为 DataFrame 返回。然后,我们将结果赋给 “First Name” 和 “Last Name” 列。

步骤四:查看结果

最后,我们可以使用 df.head() 方法查看结果:

print(df.head())

运行此代码,将得到以下输出:

       Full Name First Name   Last Name
0  Alice Liddell      Alice     Liddell
1      Bob Smith        Bob       Smith
2  Charlie Brown    Charlie       Brown

完整代码如下:

import pandas as pd

# 创建 DataFrame
data = {"Full Name": ["Alice Liddell", "Bob Smith", "Charlie Brown"]}
df = pd.DataFrame(data)

# 使用 split() 方法分割字符串
df[["First Name", "Last Name"]] = df["Full Name"].str.split(expand=True)

# 查看结果
print(df.head())

这是在 Pandas 中使用 regex 将一个字符串分割成若干列的完整攻略。