Pandas中利用datetime列使用.str.cat创建合并季度列

在数据可视化实际分析中,常用到分季度画图分析,这时候如果存在季度列可以快速的利用gruopby对其聚合画图,本文介绍一种简单的创建类似 2020Q1 季度列的方法。

首先存在一个trade销量表,buy_mount为销量列,day为销售日期(datetime类型),此时需要查看每年各季度的销量情况应该如何操作呢。

 此时可以用dt.year与dt.quarter分别创建两列画图,再使用groupby聚合再利用for循环对每个季度标注,太过于繁杂,下面介绍一种更快速的方式

.str.cat字符串合并用法

df = 字符串1.str.cat(字符串2,sep="")

其中sep为分割符

实际运用:

首先创建年与季度两列

trade["year"] = trade["day"].dt.year
trade["quartar"] = trade["day"].dt.quarter

再将其使用.str.cat将两个字符串合并为一列,注意此方法只能用于字符串类型合并,所以需要用.astype("str")将两列转换为字符串

当然,熟悉后可以一步到位,一条代码结合上面两步,此为最快的方式。

 此时表如下

 可以看见季度列已经加入表中了。

此时使用groupby对季度聚合销量,即可得到季度销量,再使用matplotlib即可画出最简单的季度销量图。

t_quarter = trade["buy_mount"].groupby(trade["year_quartar"]).sum() #对每季度聚合销量
季度销量表
 

季度销量图

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值