怎么用pandas_datareader在stoop上同时获得整个上证指数所有股票的数据,并将其存储到csv文件
时间: 2024-03-16 15:42:10 浏览: 67
使用pandas库对csv文件进行筛选保存
5星 · 资源好评率100%
可以使用 `pandas_datareader` 库中的 `get_data_yahoo()` 函数从 Yahoo Finance 上获取数据,并使用 Pandas 将数据存储到 CSV 文件中。
下面是获取上证指数中股票数据并存储到 CSV 文件中的示例代码:
```python
import pandas_datareader.data as web
import pandas as pd
# 设置起始日期和结束日期
start_date = '2021-01-01'
end_date = '2021-12-31'
# 上证指数的代码为 '000001.SS'
index_code = '000001.SS'
# 获取上证指数中所有股票的代码
index_components = web.get_components(index_code)
# 获取所有股票的历史数据
all_data = pd.DataFrame()
for code in index_components['交易代码']:
# 从 Yahoo Finance 上获取数据
data = web.get_data_yahoo(code + '.SS', start_date, end_date)
# 将数据添加到 all_data DataFrame 中
all_data = pd.concat([all_data, data])
# 将数据存储到 CSV 文件中
all_data.to_csv('shanghai_index_stocks_data.csv')
```
在上面的代码中,首先使用 `web.get_components()` 函数获取上证指数中所有股票的代码,然后循环遍历所有股票,使用 `web.get_data_yahoo()` 函数从 Yahoo Finance 上获取历史数据,并将数据添加到一个 DataFrame 中。最后,使用 Pandas 的 `to_csv()` 函数将数据存储到 CSV 文件中。
阅读全文