首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在pandas中拆分多列数据?

在pandas中拆分多列数据可以使用split()函数或str.extract()函数来实现。

  1. 使用split()函数拆分多列数据:
    • split()函数可以将字符串按照指定的分隔符进行拆分,并返回一个包含拆分后元素的列表。
    • 首先,使用DataFrame的apply()函数结合split()函数,对需要拆分的列进行操作。
    • 在apply()函数中,传入lambda表达式,对每个元素进行拆分操作。
    • 使用expand=True参数,将拆分后的结果扩展为新的列。
    • 最后,使用concat()函数将拆分后的列与原始DataFrame进行合并。

示例代码如下:

代码语言:python
复制

import pandas as pd

创建示例DataFrame

df = pd.DataFrame({'Name': 'John Doe', 'Jane Smith',

代码语言:txt
复制
                  'Age': ['30', '25'],
代码语言:txt
复制
                  'Location': ['New York', 'London']})

使用split()函数拆分Name列

df['First Name', 'Last Name'] = df'Name'.apply(lambda x: pd.Series(str(x).split(' ')))

打印拆分后的DataFrame

print(df)

代码语言:txt
复制

输出结果:

代码语言:txt
复制
代码语言:txt
复制
    Name Age  Location First Name Last Name

0 John Doe 30 New York John Doe

1 Jane Smith 25 London Jane Smith

代码语言:txt
复制
  1. 使用str.extract()函数拆分多列数据:
    • str.extract()函数可以使用正则表达式从字符串中提取匹配的部分,并返回一个包含提取结果的Series。
    • 首先,使用str.extract()函数对需要拆分的列进行操作。
    • 在str.extract()函数中,传入正则表达式来匹配需要提取的部分,并使用括号将需要提取的部分括起来。
    • 使用expand=True参数,将提取结果扩展为新的列。
    • 最后,使用concat()函数将提取结果的列与原始DataFrame进行合并。

示例代码如下:

代码语言:python
复制

import pandas as pd

创建示例DataFrame

df = pd.DataFrame({'Name': 'John Doe', 'Jane Smith',

代码语言:txt
复制
                  'Age': ['30', '25'],
代码语言:txt
复制
                  'Location': ['New York', 'London']})

使用str.extract()函数拆分Name列

df['First Name', 'Last Name'] = df'Name'.str.extract(r'(\w+)\s(\w+)')

打印拆分后的DataFrame

print(df)

代码语言:txt
复制

输出结果:

代码语言:txt
复制
代码语言:txt
复制
    Name Age  Location First Name Last Name

0 John Doe 30 New York John Doe

1 Jane Smith 25 London Jane Smith

代码语言:txt
复制

以上是在pandas中拆分多列数据的两种常用方法。根据具体的需求和数据格式,选择适合的方法进行操作。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券