文本处理
str 属性
- Series中与字符串相关的方法,封装在子模块下
- series.str.具体的方法
- 具体可以通过
- dir(pd.Series.str)查看 - 常用的方法(以下用到的series值均表示为字符的值)
- s.str.count(‘a’) 统计a在每一个series值中出现了多少次
- s.str.split(sep = ‘’) 按照指定的分隔符拆分,指定分隔符不作为一个元素结果返回
- s.str.partition(sep = ‘’) 按照指定的分隔符第一次出现的位置拆分,指定分隔符单独作为一个元素返回
- s.str.replace(old,new) 用new替换old,如果有多个old会全部替换成new,可以替换单个字符
- 和s.replace(old,new)不同 str属性的replace方法可以替换单个字符,但是自带的replace()方法必须要匹配完整的字符串才能替换
- s.str.repeate(int) 使每个series值重复Int次
- s.str.startwith(‘a’) 是否以a开头,返回每个series值的布尔值
- s.str.endwith(‘b’) 是否以b结尾,返回每个series值的布尔值
- s.str.contains(‘c’) 是否包含c,返回每个series值的布尔值
- s.str.len() 返回每个series值的长度
- s.str.find(‘d’) 在s中查找d,找到返回d对应的索引,未找到返回-1,只返回找到的第一个d的索引
- s.str.zfill(int) 0填充,如果该出的值少于8个字符,则用0填充
- s.str.cat(sep=’’) 用指定的字符拼接
- s.str.join(’*’) 用*插入到每个字符中间
日期类型转化
dt属性
- pd.to_datetime(series) 转化为日期类型
- series中的日期书写方式可以不一样,系统会自动判断
- 比如:a2= pd.Series([‘Jul 31, 2019’, ‘2020-01-10’, ‘2020.12.31’,‘2019/11/23’])
- 使用a2 = pd.to_datatime(a2)也可以转换成功 - 可以使用astype(‘datetime64’)转换
- 比如:a2 = a2.astype(‘datetime64’)也可以转换成功 - a2.dt.year 提取年
- a2.dt.month 提取月
- a2.dt.day 提取日
- a2.dt.hour 提取小时
- a2.dt.minute 提取分钟
- a2.dt.second 提取秒
- a2.dt.to_period(‘Y’)
- 参数 Y表示年, M 表示月份,Q 表示季度,D 表示按天 - 时间差timedalte 是datetime中的一个对象,该对象表示两个时间的差值
int类型的时间转换为datetime64[ns]
- 第一,使用astype()转换为str类型
- 第二,在使用一次astype()或者pd.to_datetime()转换
str_date = user['日期'].astype('str')
final_date = str_date.astype('datetime64[ns]')
# 或者
final_date = pd.to_datetime(str)
float类型的时间转换为datetime
- 直接使用pd.to_datetime(pd.series,format = %Y%m%d),此方法同样适用于int类型的时间
pd.to_datetime(user['日期'],format = '%Y%m%d')
-》内容源于老师,自己整理学习用!!!
本文详细介绍了Pandas库中Series对象的str属性,包括字符串统计、拆分、替换、填充、拼接等操作。同时,讲解了如何将系列转换为日期类型,以及日期的提取和时间差计算。此外,还涵盖了日期类型的年、月、日、小时等字段的提取。文章适合对Pandas有一定了解的数据处理人员阅读。
423

被折叠的 条评论
为什么被折叠?



