我正在尝试生成将被API接受的时间戳(看起来像字符串格式),然后遍历这些时间戳并创建DF。
这就是我现在所拥有的。
码:
cg = CoinGeckoAPI()
cs = 'bitcoin'
start_dti = '2017, 1, 1'
end_dti = '2019, 2, 1'
index = pd.date_range(start_dti, end_dti)
// missing a way to loop over this data
data = cg.get_coin_history_by_id(cs, index)
df_pr = pd_json.json_normalize(data['developer_data'])
df = pd.DataFrame(data=[{'date' : index,
cs: data['developer_data']['pull_request_contributors']}]).set_index('date')
我希望得到一个这样的表格:
bitcoin
2017-01-01 380
2017-01-02 385
...
2019-02-01 1050
你可以使用.date的str:
In [11]: [str(d) for d in index.date]
Out[11]: ['2019-01-01', '2019-01-02', '2019-01-03', '2019-01-04', '2019-01-05', '2019-01-06', '2019-01-07', '2019-01-08', '2019-01-09', '2019-01-10', '2019-01-11', '2019-01-12', '2019-01-13', '2019-01-14', '2019-01-15', '2019-01-16', '2019-01-17', '2019-01-18', '2019-01-19', '2019-01-20', '2019-01-21', '2019-01-22', '2019-01-23', '2019-01-24', '2019-01-25', '2019-01-26', '2019-01-27', '2019-01-28', '2019-01-29', '2019-01-30', '2019-01-31', '2019-02-01']
你可以使用apply,但我更喜欢使用dict:
history = {}
for d in index.date
data = cg.get_coin_history_by_id(cs, str(d))
history[d] = pd_json.json_normalize(data['developer_data']
# etc?
然后连接生成的DataFrames的dict。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。