python - 如何将 2017-W01 转换为日期?
问题描述
我有一个 csv 文件,其中包含类似于 2017-W01、2017-W02、2018-W07 等的数据(列 = '日期')。如何让 Python 将其读取为日期?
我试过索引日期列
import pandas as pd
df = pd.read_csv(r'input.csv', parse_dates=True, index_col='date')
df.head()
解决方案
假设,您可以从 csv 文件中收集日期。要将此数据转换为日期时间格式,您可以使用datetime
lib:
import datetime as D
parsed_date = '2017-W01' # suppose, you got it from a cvs document in str format
date = D.datetime.strptime(parsed_date, '%Y-W%W')
print(date) # datetime.datetime(2017, 1, 1, 0, 0)
print(date.year, date.month) # 2017, 1
print(str(date)) # '2017-01-01 00:00:00'
链接到文档:https ://docs.python.org/3/library/datetime.html#strftime-and-strptime-behavior
推荐阅读
- sql - sql中用户自定义的混合列表查询
- java - 在 Embedded Apache Tomcat 9 中启用 SSL 并以编程方式添加证书
- c# - 如何通过局部视图从 ajax 成功中获取模型的特定数据
- c# - 使用 TagBuilder 类 C# 插入属性
- fastlane - FastlaneCore::Helper::AppcenterHelper:Class (NameError) 的未定义局部变量或方法“所有者”
- ios - 点击其他单元格时如何在 TableViewController 中隐藏键盘?
- css - 如何使用 Css 在地图中创建“模糊区域”?
- php - 为什么协议 gs 上的 file_get_contents() 错误(开发本地 GAE)
- javascript - 如何在 chrome 扩展中使用 AJAX 向“我的 XAMPP 服务器”发送 GET 请求
- javascript - div上的点击事件并过滤vuex数据--vue.js