Pandas基础(四)

10 有序数据
10.1序的建立
有序类别:as_unordered()
无序类别:reorder_categories()
通过cat对象调用
可以通过sort_values(),sort_index()排序
10.2区间类别
cut()函数构造
参数:bin传入整数n时,按照最大和最小值等距分为n段
默认为左开右闭
另外常用的方法,传入分割点的列表

pd.cut(s,bins=[-np.infty,1.2,1.8,2.2,np.infty]
#另外两个常用参数为labels和retbins
#分别代表了区间的名字和是否返回分割点

qcut()函数构造
q参数,传入为正整数时按照分位数n等分
10.3一般区间的构造
区间的开闭状态:right,left,both,neither
区间的属性:mid,length,right,left,closed
overlaps判断两个区间是否有交集
pd.IntervalIndex
生成方法:from_breaks,from_arrays,from_tuples,interval_range
10.4区间的属性和方法
left,right,mid,length
contains()是否包含某元素
overlaps()是否有交集
11 时序
11.1时序对象
时间戳 Timestamp
时间差 Timedeltas
时间偏置 DateOffset
11.2时间戳
单个时间戳利用pd.Timestamp()实现
属性:year,month,day,hour,min,second
11.3 Datatime时间序列的生成
利用to_datetime和date_range来生成
data_range()
重要参数为:
start,end,freq,periods
11.4 dt对象
常用属性:
在这里插入图片描述
month_name,day_name返回英文的月名和星期名方法不是属性
11.5 时间戳的切片与索引

#利用dt对象与布尔条件
s=pd.Series(np.random.randint(2,size=366),
index=pd.date_range("2020-01-01","2020-12-31"))
idx=pd.Series(s.index)
#每月的最后一天与第一天
s[(idx.is_month_start|idx.is_month_end)].head()
#双休日
s[idx.dayofweek.isin[5,6].values].head()

11.6时间差
生成:pd.to_timedelta
序列生成:timedelat_range
支持的运算:与标量的乘法运算、与时间戳的加减法运算、与时间差的加减法运算
11.7日期偏置
在这里插入图片描述
在这里插入图片描述
11.8时序滑窗与重采样
所谓时序的滑窗函数,即把滑动窗口用 freq 关键词代替
重采样
在 resample 中要特别注意组边界值的处理情况,默认情况下起始值的计算方法是从最小值时间戳对应日期
的午夜 00:00:00 开始增加 freq ,直到不超过该最小时间戳的最大时间戳,由此对应的时间戳为起始值,然后每次累加 freq 参数作为分割结点进行分组,区间情况为左闭右开。
整理自:https://github.com/datawhalechina/joyful-pandas

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值