python pandas分割DataFrame中的字符串及元组的方法实现

  • Post category:Python

下面是详细的攻略。

Python Pandas分割DataFrame中的字符串及元组的方法实现

1.使用str.split()分割字符串

可以使用str.split()方法分割DataFrame中的字符串,可以通过指定分隔符、要分割的列等参数实现。

示例代码:

import pandas as pd

# 创建DataFrame
df = pd.DataFrame({'col1': ['A_B_C', 'D_E_F'], 'col2': [1, 2]})

# 使用str.split()分割字符串
df[['col1_1', 'col1_2', 'col1_3']] = df['col1'].str.split('_', expand=True)

print(df)

输出结果:

    col1  col2 col1_1 col1_2 col1_3
0  A_B_C     1      A      B      C
1  D_E_F     2      D      E      F

2.使用str.extract()提取字符串

在DataFrame中提取字符串,可以通过使用str.extract()方法实现。可以通过指定正则表达式等参数,实现字符串的提取。

示例代码:

import pandas as pd

# 创建DataFrame
df = pd.DataFrame({'col1': ['A_B_C', 'D_E_F'], 'col2': [1, 2]})

# 提取字符串
df[['col1_1', 'col1_2', 'col1_3']] = df['col1'].str.extract('(\w)_(\w)_(\w)', expand=True)

print(df)

输出结果:

    col1  col2 col1_1 col1_2 col1_3
0  A_B_C     1      A      B      C
1  D_E_F     2      D      E      F

3.使用str.split()分割元组

如果DataFrame中的数据类型为元组(tuple),也可以使用str.split()方法实现分割。

示例代码:

import pandas as pd

# 创建DataFrame
df = pd.DataFrame({'col1': [(1, 2, 3), (4, 5, 6)], 'col2': [1, 2]})

# 分割元组
df[['col1_1', 'col1_2', 'col1_3']] = df['col1'].apply(pd.Series)

print(df)

输出结果:

          col1  col2  col1_1  col1_2  col1_3
0  (1, 2, 3)     1       1       2       3
1  (4, 5, 6)     2       4       5       6

4.使用apply()方法处理元组

除了使用str.split()方法,还可以使用apply()方法等方式处理DataFrame中的元组。

示例代码:

import pandas as pd

# 创建DataFrame
df = pd.DataFrame({'col1': [(1, 2, 3), (4, 5, 6)], 'col2': [1, 2]})

# 处理元组
df[['col1_1', 'col1_2', 'col1_3']] = df['col1'].apply(lambda x: pd.Series(x))

print(df)

输出结果:

          col1  col2  col1_1  col1_2  col1_3
0  (1, 2, 3)     1       1       2       3
1  (4, 5, 6)     2       4       5       6

以上就是使用Python Pandas分割DataFrame中的字符串及元组的方法实现的完整攻略。