【问题标题】:How to get week number and year from epoch [duplicate]如何从纪元获取周数和年份[重复]
【发布时间】:2020-05-25 15:41:24
【问题描述】:
我有一些数据如下,需要在同一行中获取周数和年份。
data.head()
+---------------+
| epoch |
+---------------+
| 1580495399964 |
| 1580495399334 |
| 1580495397591 |
| 1580495396967 |
| 1580495396331 |
+---------------+
我怎样才能得到这样的结果:
data.head()
+---------------+-----------+
| epoch | week-year |
+---------------+-----------+
| 1580495399964 | 4-2020 |
| 1580495399334 | 4-2020 |
| 1580495397591 | 4-2020 |
| 1580495396967 | 4-2020 |
| 1580495396331 | 4-2020 |
+---------------+-----------+
【问题讨论】:
标签:
python
date
week-number
【解决方案1】:
试试:
data['week-year'] = data.epoch.apply(pd.to_datetime, unit='ms')
data['week-year'] = data['week-year'].dt.strftime('%U-%Y')
epoch week-year
0 1580495399964 4-2020
1 1580495399334 4-2020
2 1580495397591 4-2020
3 1580495396967 4-2020
4 1580495396331 4-2020
【解决方案2】:
您可以使用以下代码行生成所需格式的输出:
import time
time1 = 1580495399964
base = time.gmtime(1580495399964 / 1000)
print("{0:2}-{1:4}".format(base.tm_mon, base.tm_year))
【解决方案3】:
data['week-year'] = pd.to_datetime(data['epoch']+19800, unit='ms').dt.strftime('%U-%Y')
+------------------+-----------+
| epoch week-year | week-year |
+------------------+-----------+
| 0 1580495399964 | 4-2020 |
| 1 1580495399334 | 4-2020 |
| 2 1580495397591 | 4-2020 |
| 3 1580495396967 | 4-2020 |
| 4 1580495396331 | 4-2020 |
+------------------+-----------+
注意:如果您的纪元仅在 GMT 中,则添加 19800