我在Python中有一个标准的系列,我想根据分隔符拆分每个元素。
我目前使用的是
for i in Series:
i.split(' ')
但是,这仅返回系列中的最后一个元素。
我希望能够在循环通过系列工作时"捕获"拆分的每个内容,然后将它们写回该(或其他(系列。
我希望这是有道理的:-S
我认为您需要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
一种方法是拆分并保留在同一系列对象中:
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