python - 在 python 财务下载中避免按字母顺序排列
问题描述
我正在从 yahoo Finance 下载数据,并按字母顺序下载。不像我发送列表。如何避免这种情况?
STOCKS= ['^TNX', '^VIX', 'SPY', 'QQQ', 'DIA', '^FTSE', '^GDAXI', '^HSI', '^N225',
'XLC', 'XLY', 'XLP', 'XLE', 'XLF', 'XLV', 'XLI', 'XLB', 'XLRE', 'XLK', 'XLU',
'USO', 'GLD', 'SIL', 'CPER', 'PALL', 'LIT', 'URA', 'REMX', 'OYB', 'CORN', 'CANE', 'TAGS', 'WEAT']
start_date = '2016-06-01'
end_date = '2018-06-01'
extras_data = fyf.download(STOCKS, start_date, end_date)['Close']
print(extras_data)
什么回来了:
CANE CORN ... ^TNX ^VIX
Date ...
2016-05-31 11.50 22.139999 ... 1.834 14.190000 2016-06-01 11.56 22.610001 ... 1.846 14.200000 2016-06-02 11.85 22.549999 ... 1.811 13.630000 2016-06-03 12.13 22.760000 ... 1.704 13.470000
这些列按字母顺序排列,我想尊重列表顺序。
解决方案
我就是这样做的。
"your code here"
#after pulling the data from fyf. This will check what
#actual stocks were pulled and put it in a list
sorted_columns = [STOCK for STOCK in STOCKS if STOCK in extras_data.columns]
#then I use those columns to re-sort the dataframe from fyf
print(extras_data.loc[:,sorted_columns])
#or you can store it back to itself
extras_data = extras_data.loc[:,sorted_columns]
推荐阅读
- azure - Azure APIM 响应标头变为小写
- python - 标记化后删除标点符号和停用词(nltk)
- python - 如何在 Python 3 中使用来自另一个函数的变量?
- html - 如何以调整大小以在一行中显示整个日期的方式更改 Angular 中的列
- linux - 使用 awk 从 http 错误日志中仅过滤 ip
- google-analytics - 在 Google Data Studio 中显示没有路径的页面名称
- amazon-s3 - 官方 aws-cli 镜像不接受来自 gitlab 的脚本命令
- javascript - Vanilla JS,Accuweather API,参考错误:数据未定义。不知道我的下一步应该是什么。必须使用位置 API 调用另一个 API
- mongodb - 将 Mongo Collection 文档中的日期值更新为 ISODate 格式
- ruby-on-rails - 自动过滤索引页面上的帐户