pandas字符串处理
2023-12-20 05:59:03
df1.loc[:,'前部']=df1['班级名称'].str.slice(0,15)
df1.loc[:,'大区']=df1['班级名称'].str.split('-').str[0]
df1.loc[:,'版本']=df1['班级名称'].str.split('-').str[1]
df1.loc[:,'进度']=df1['班级名称'].str.split('-').str[2]
df1.loc[:,'时间']=df1['班级名称'].str.split('-').str[3]
df1.loc[:,'时间1']=df1['时间'].str.split('(').str[0]
常规字符串截取处理
(编辑技巧:mac?+数字2,设定为目录)
1、str.cat和指定字符串
df1.loc[:,'合并']=df1['大区'].str.cat(df1['版本'],sep='-').str.cat(df1['进度'],sep='-')
str.cat可以连接多列,并设定连接符
2、split按照指定字符分割
df1.loc[:,'大区']=df1['班级名称'].str.split('-').str[0]
以上为按‘-’分割某列,并取分割后的第一部分字符串
split('-',expand=True,n=1),expand默认是False,若设置为True则会将列表展开,变成多列,n是设置分列的次数,n=1则分割一次,成2部分
rsplit和split用法一致,只不过是从右边开始分列
3、partition按照指定字符进行分割,且只分割一次
df1.loc[:,'1']=df1['合并'].str.partition('-')[2]
如上,partition分割后只能引用0,1,2三个部分,引用形式如代码所示
如果有多个分隔符,也只会按第一个分隔符进行分裂
rpartition和partition类似,只不过会从右往左找第一个分隔符进行分裂
4、get获取某列字符串的特定字符
df1.loc[:,'te']=df1['合并'].str.get(2)
如上,获取列的第三个字符方法
5、replace替换,slice切片截取,slice_replace截断替换,translate单字母替换
df1.loc[:,'截断替换']=df1['合并'].str.slice_replace(0,1,'lingo班课')
把某一列的前两个字符,替换为指定字符串,如上所示
dic=str.maketrans({'A':'啊'})
df1.loc[:,'字母替换']=df1['合并'].str.translate(dic)
把所有的字符“A”替换为指定字符“啊”
6、isnumeric数字及字母判断
df1.loc[:,'数字字母判断']=df1['合并'].str.isnumeric()
- sdecimal 只能用于Unicode数字
- isalnum 判断是否全是字母或者数字
- isalpha 是否全是字母
- isdigit用于Unicode数字,罗马数字
- isnumeric用于unicode数字,罗马数字,汉字数字
7、条件查询:startswith开头,endswiths结尾,contains包含
df1.loc[:,'开头是']=df1['合并'].str.startswith('A')
8、repeat复制
str.repeat(2)复制两次
9、strip、lstrip、rstrip删除
str.strip('-'),按照指定字符从两边、左边、右边删除
10、大小写替换
- str.lower() # 所有字符转成小写
- str.upper()# 所有字符转成大写
- str.title()# 每一个单词的首字母大写
- str.capitalize()# 第一个字母大写
- str.swapcase()# 大小写交换
11、待续
文章来源:https://blog.csdn.net/Darin2017/article/details/135085295
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!