python 日期的周数_对比Excel学习python数据分析-学习笔记5

本小节学习的是关于时间方面的计算。

  • 返回当前时刻的日期和时间
  • 返回当前时刻的年、月、日
  • 返回当前时刻的周数
  • 返回当前时间所在一年中的周数
  • 返回当前时间下的日期或时间
  • 将日期和时间格式转换成自定义格式
  • 将时间格式转换为字符串
  • 将字符串格式转换为时间格式
  • 时间索引
  • 时间差
  • 时间偏移

1.获取当前时刻的时间

  • 返回当前时刻的日期和时间-datetime.now()

6cd0701c50ec0ff1872a0c1cc5d244ba.png
  • 返回当前时刻的年、月、日-now().year/now().month/now().day

02eb8997856926dd3fbd5a8f49a4886d.png
  • 返回当前时刻的周数-weekday()

在excel中是把周日当作一周中的第一天,因此使用的函数weekday(now()-1)得到之后要减掉1;而在python中虽然是以周一作为一周中的第一天,但是计数是从0开始的,因此要加1才能得到正确的周数。

710de0c50299a148f7d7e9c8be68189a.png
  • 返回当前时间所在一年中的周数-isocalendar()

3fce0bed79047e99fd46d826b8480510.png

2.指定日期和时间的格式

  • 返回当前时间下的日期或时间

b438b8a308662846f8a08abf656439da.png

0defe9806508054da932593b6c2f0515.png
  • 将日期和时间格式转换成自定义格式-strftime( )

bbb58fa0596c1aec76bb54d2bdcca8d6.png

03e00844381326682ad84d422717bf4e.png
F是Y-m-D表示的简写;D是/m/d/y表示的简写

3.字符串和时间格式之间的互相转换

  • 将时间格式转换为字符串-str()

1741a6dd273fc7e6fc80338fdd20cf8c.png
  • 将字符串格式转换为时间格式-需导入包,parse()

374ec80c86aaa3927ce7d85c0589bea5.png

4.时间索引

  • 当索引列是时间时,选择某一时间段内的值

先假设数据如下:

ed5546cb4f4fc96c4b8241fa09186ac1.png
原始数据

d8f2978bca06631afc8b630dc9d20892.png
选择某一年份的数据

68c528a59beb99f9f03d4907fcdd3350.png
选择某一年某一月的数据,也可以某月到某月

a595e68fd5ac0355a5627a06f8f85165.png
选择某一年某一月某一天到某一天之间的数据

6e1b0950a31b2965dad230b4d991f4e8.png
注意:这里如果只是data["2018-01-01"]的话会出错
  • 当索引列是其他,而时间在数据列中时

先假设数据如下:

6de9875c381b651ecda16e67de42d51f.png
原始数据

09ad1ab35b89a76b04b68d5c2c89f292.png
选择成交时间在某一天或者在某天之后

fd8666d88ea6f11c55288cf55436007a.png
选择成交时间位于某个时间段之间

5.时间运算

  • 两个时间之差-直接相减之后得到的是天数和秒,可以将秒再换算成小时或者分钟

72503e410bbfc01220d78daa8cd04c84.png
  • 时间偏移-即将时间往前或往后推一段时间

在excel中注意加减的对应的都是天数,如果要加减的是小时或分钟,都先换算成天数,再相加减;

在python中实现偏移有2种方式:借助timedelta或者data offset

4032ff7601b43ee974f3d468e86140a6.png
天数的推移,如果date时间不含小时和分钟而推移小时或分钟的话会出错

0c2b4fe173961be52c77c803672fb293.png
小时的推移

6dfedb21a847f2a92ea0a956914b8dc6.png
分钟的推移

19c594c954a228ce1ff4081547ea8bbd.png
秒的推移

6f6eff5148e4ed0d5bd4ae5ff7774b9d.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值