AttributeError;‘Series‘ object has no attribute ‘split‘解决

AttributeError;‘Series’ object has no attribute 'split’解决

pandas对字符串做处理

>>> s = pd.Series(["this is good text", "but this is even better"])   
>>> [x for x in s.split()]

如果我们直接对Series中的字符串做切分,就会报错 AttributeError: ‘Series’ object has no attribute ‘split’
需要先把Series对象转换为字符串:pandas.Series.str.split,然后再切分不会报错了。

>>> [x for x in s.str.split()]
 [['this', 'is', 'good', 'text'], ['but', 'this', 'is', 'even', 'better']]
————————————————

追加练习:

>>> s=pd.Series(['li xiao qing ','wu si si'])
>>> [x for x in s]
['li xiao qing ', 'wu si si']
>>> [x for x in s.split()]
Traceback (most recent call last):
  File "<pyshell#40>", line 1, in <module>
    [x for x in s.split()]
  File "C:\Python36\lib\site-packages\pandas\core\generic.py", line 4372, in __getattr__
    return object.__getattribute__(self, name)
AttributeError: 'Series' object has no attribute 'split'
>>> [x for x in s.str.split()]
[['li', 'xiao', 'qing'], ['wu', 'si', 'si']]
>>> s='   lixiaoqing   '
>>> s.strip()
'lixiaoqing'
>>> s[0]
' '
>>> s[1]
' '
>>> s[-1]
' '
>>> s[-2]
' '
>>> s[-3]
' '
>>> s[2]
' '
>>> s[3]
'l'
>>> s
'   lixiaoqing   '
>>> s[-4]
'g'
>>> 

转自:https://blog.csdn.net/q337100/article/details/80978421