str属性
str
属性只对series。
可以用来对数据框的列名和文字列进行操作。
常用操作
分割
分割str.split(' ')
,括号中是分割依据的字符串。
选取分割后的一部分,有两种方法:
str.split(' ').get(0)
str.split(' ').str[0]
expand=True
参数将字符串拆分成多列,返回一个数据框。
n=1
参数指定拆分次数。str.split()
默认从左向右拆分,str.rsplit()
从右往左拆分。
替换
replace
,findall
可以接受正则表达式。要注意正则表达式中的元字符,如$
|^
|.
|?
,等,给它们加上\
进行转义。
选取字符串数据
可以用str[n]
来选择一列字符串中的第n个字符,没有的显示NaN。
提取
返回第一个匹配成功的字符串:str.extract(regex, expand=False)
。
expand=True
返回dataframe。expand=False
返回Series/Index/DataFrame,如果只匹配到一列返回series,匹配不到返回index,匹配多列dataframe。默认False。
最好加上expand参数,不然会有FuturaWarning。
给匹配到的列添加列名,(?Pregex)
。
提取所有
提取所有匹配成功的字符串并返回,str.extractall(regex)
。
str.match(regex) 和 str.contains(regex)
返回布尔型结果。
match依据的是re.match,而contains依据的是re.search。