【发布时间】:2019-09-18 21:14:26
【问题描述】:
我有一个从 sqlite3 查询创建的 pandas 数据框 date_win。它看起来像这样:
0
0 2011-01-29
1 2011-03-19
2 2011-05-07
3 2011-02-19
4 2011-03-12
5 2011-01-22
6 2011-04-17
我想对其进行迭代以获取日期,转换为 unix 并将其放入 Dark Sky api。当我得到日期并分配给一个变量并放入我的日期时间转换时,错误是:
ValueError: 时间数据 '0 2011-01-29\nName: 0, dtype: object' 与格式 '%Y-%m-%d' 不匹配
我尝试过使用这个 for 循环:
for i in range(0,len(date_win)):
并且:
for i in date_win:
这是我的完整代码sn-p:
for i in range(0,len(date_win)):
s = str(date_win.iloc[i])
dt = round(time.mktime(datetime.datetime.strptime(s, "%Y-%m-%d").timetuple()))
dt = str(dt)
resp = requests.get('https://api.darksky.net/forecast/[my_key]/52.52,13.4050,' + dt)
data=resp.json()
print(data['currently']['summary'])
这里是错误代码:
ValueError: 时间数据 '0 2011-01-29\nName: 0, dtype: object' 与格式 '%Y-%m-%d' 不匹配
如果我在 api 请求中使用s = "2011-01-01" 或硬编码,则 api 调用有效。我只是没有正确地进行迭代。
【问题讨论】:
-
请正确格式化您的代码并正确格式化示例数据
标签: python pandas datetime python-datetime