Pandas文本数据处理与时间序列

字符文本
Pandas提供了一组字符串函数,可以方便地对字符串数据进行操作。 最重要的是,这些函数忽略NaN值。以下的这些方法几乎都支持Python内置的字符串函数。Pandas的一些方法都支持正则表达式,比如下面的replace(),可以多多尝试/xyx。

函数名 描述
lower() 将Series/Index中的字符串转换为小写。
upper() 将Series/Index中的字符串转换为大写。
len() 计算字符串长度。
strip() 帮助从两侧的系列/索引中的每个字符串中删除空格(包括换行符)。
split(’’) 用给定的模式拆分每个字符串。
cat(sep=’ ') 使用给定的分隔符连接系列/索引元素。
get_dummies() 返回具有单热编码值的数据帧(DataFrame)。
contains(pattern) 如果元素中包含子字符串,则返回每个元素的布尔值True,否则为False。
replace(a,b) 将值a替换为值b。
repeat(value) 重复每个元素指定的次数。
count(pattern) 返回模式中每个元素的出现总数。
startswith(pattern) 如果系列/索引中的元素以模式开始,则返回true。
endswith(pattern) 如果系列/索引中的元素以模式结束,则返回true。
find(pattern) 返回模式第一次出现的位置。
findall(pattern) 返回模式的所有出现的列表。
swapcase() 变换字母大小写。
islower() 检查系列/索引中每个字符串中的所有字符是否小写,返回布尔值
isupper() 检查系列/索引中每个字符串中的所有字符是否大写,返回布尔值
isnumeric() 检查系列/索引中每个字符串中的所有字符是否为数字,返回布尔值。

上述的方法按需汲取即可,唯一要注意的是,在选择以后注意使用str转化为字符串,这样才有效。
比如

import pandas
df = pd.DataFrame({
    
    'name':['jack','MIKE']})
df['name'] = df['name'].str.upper() #全部转化为大写

时间序列
可以使用pd.date_range(start=None, end=None, periods=None, freq='D')生成时间范围。

  • start和end以及freq配合能够生成start和end范围内以频率freq的一组时间索引
  • start和periods以及freq配合能够生成从start开始的频率为freq的periods个时间索引

freq的可取值:
参数说明
代码演示

import numpy as np
import pandas as pd
index1 = pd.date_range('2020-05-14',freq="D",periods=5)
df = pd.DataFrame(np.random.rand(5),index=index1)
index2=pd.date_range('2020-6-16 12:45',freq="T",periods=5)
ndf = pd.DataFrame(np.random.rand(5),index=index2)

结果截图
结果截图

猜你喜欢

转载自blog.csdn.net/qq_44091773/article/details/106078855
今日推荐