使用python拆分系列中的每个元素

时间:2017-05-24 08:58:52

标签: python pandas split

我有一个Python标准系列,我想根据分隔符拆分每个元素。

我目前使用的是

for i in Series:
    i.split(' ')

然而,这仅返回系列中的最后一个元素。

我希望能够“捕捉”每个被分割的东西,因为循环在系列中运行,然后将它们写回到那个(或另一个)系列。

我希望这是有道理的:-S

2 个答案:

答案 0 :(得分:3)

我认为你需要str.split - 对于按空格分割,可以省略pat参数,因为如果None,则拆分空格。输出是列表。

s1 = s.str.split()

s = pd.Series(['s d','f g','d'])
print (s)
0    s d
1    f g
2      d
dtype: object

s1 = s.str.split()
print (s1)
0    [s, d]
1    [f, g]
2       [d]
dtype: object

答案 1 :(得分:0)

一种方法是拆分并将其保留在同一系列对象中:

 In [3]: s = pd.Series(['Element1 , Element2'])
 In [7]: s
 Out[7]: 
 0    Element1 , Element2
 dtype: object

In [8]: s.str.split(',')
Out[8]: 
0    [Element1 ,  Element2]
dtype: object

如果您希望将一个系列分为两列或基本上分为两个系列,则可以使用expand=True参数:

In [12]: s.str.split(',', expand=True)
Out[12]: 
           0          1
0  Element1    Element2

In [3]: type(s.str.split(',', expand=True))
Out[3]: pandas.core.frame.DataFrame