📅  最后修改于: 2023-12-03 15:19:15.903000             🧑  作者: Mango
Pandas是Python中基于Numpy数组构建的数据处理包。其中,Series是基本的一维数组,它由一组数据和一组与之相关的标签(即索引)组成。Series.str.partition()方法是Series对象的一个字符串处理方法,它用于将Series对象中的每个字符串切分为三个部分,并返回一个元组。
Series.str.partition(sep, expand=True)
import pandas as pd
# 创建Series对象
s = pd.Series(['hello world', 'foo|bar', 'python|pandas', 'data|processing'])
# 将每个字符串按 | 切分成三部分,并将结果转换为DataFrame
df = s.str.partition('|')
print(df)
输出结果为:
0 | 1 | 2
0 hello world | | None
1 foo | bar | None
2 python | pandas | None
3 data | processing| None
上面的代码创建了一个包含四个字符串的Series对象,并将其用|
分割成三个部分,然后将结果转换为一个包含四行三列的DataFrame。\
如果不需要DataFrame,只需要元组,则可以将expand
参数设置为False
:
# 将每个字符串按 | 切分成三部分,并将结果转换为元组
res = s.str.partition('|', False)
print(res)
输出结果为:
(array(['hello world', 'foo', 'python', 'data'], dtype=object),
array(['', '|', '|', '|'], dtype=object),
array([None, 'bar', 'pandas', 'processing'], dtype=object))
上面的代码将结果转换为元组,其中每个元素都是一个Series对象。第一个元素是左侧字符串,第二个元素是分隔符,第三个元素是右侧字符串。