split()方法
根据分隔符或正则表达式对字符串进行拆分;
以逗号分隔的字符串可以用split拆分成数段,可以指定拆分的次数。
使用语法
- Series.str.split(pat=None, n=-1, expand=False)
参数
pat : 字符串,默认使用空白分割,分列的依据,可以是空格,符号,字符串等等
n : 整型,默认为-1,既使用所有的分割点分割。
n参数,指定分隔的次数
>>> df[0].str.split('_', n = 1)
0 [A, 1_1]
1 [B, 2_1]
2 [C, 3_1]
3 [D, 4_1]
Name: 0, dtype: object
expand : 布尔值,默认为False。可以指定拆分的次数
如果为真返回数据框(DataFrame)或复杂索引(MultiIndex);如果为假,返回序列(Series)或者索引(Index).
返回值
- expand参数:每个具体值的类型是字符串
实例
>>> import numpy,pandas;
>>> s = pandas.Series([‘a_b_c‘, ‘c_d_e‘, numpy.nan, ‘f_g_h‘])
>>> s.str.split(‘‘)
0 [a, b, c]
1 [c, d, e]
2 NaN
3 [f, g, h]
dtype: object
>>> s.str.split(‘‘, -1)
0 [a, b, c]
1 [c, d, e]
2 NaN
3 [f, g, h]
dtype: object
python中有一系列内置的方法可以进行字符串操作,例如使用split()方法粉格子风,同样作为python中的pandas库也可以使用内置方法split()方法分割字符串,但是split()方法不能分割字符串分列,要想分列,需要先用.str将这一列转换为类似字符串的格式,就能够使用split()方法。
以上就是pandas中使用split()方法分割字符串得详细介绍,需要注意如果直接用某一列和split()来分列是不行的,因为Series数据类型是没有split()的,所以需要先用.str将这一列转换为类似字符串的格式,就能够使用split()了