akshare获取多个股票数据并存在.csv文件里
时间: 2023-06-08 22:09:24 浏览: 281
可以使用 akshare 的股票数据接口获取多个股票数据,并存储到一个 .csv 文件中。
示例代码如下:
```python
import akshare as ak
import pandas as pd
# 获取股票代码列表
stock_list = ["sh600519", "sh600036", "sh601318"]
# 获取股票历史行情数据
stock_history = pd.DataFrame()
for stock_code in stock_list:
stock_history = pd.concat([stock_history, ak.stock_zh_a_hist(symbol=stock_code)])
# 将行情数据保存到 .csv 文件中
stock_history.to_csv("stock_data.csv", index=False)
```
上述代码中,首先定义了一个包含多个股票代码的列表 `stock_list`,然后使用 akshare 的 `stock_zh_a_hist` 函数获取每个股票的历史行情数据,并将所有数据合并到一个 DataFrame 中。最后,使用 DataFrame 的 `to_csv` 方法将数据保存到一个 .csv 文件中,其中 `index=False` 参数表示不保存 DataFrame 的索引列。
请注意,以上示例代码仅供参考,具体实现方式可能需要根据具体情况进行调整。
相关问题
使用pandas将多个.csv的第四行数据导出到一个.csv文件
好的,这个问题很简单。您只需要编写一个 Python 脚本,使用 Pandas 库的 read_csv() 方法读取每个 .csv 文件,然后将第四行数据使用 to_csv() 方法写入一个新的 .csv 文件。以下是示例代码:
```python
import pandas as pd
import glob
# 获取所有 .csv 文件的路径
csv_files = glob.glob('*.csv')
# 创建一个空的 DataFrame,用于存储第四行数据
data = pd.DataFrame()
# 循环遍历所有文件,读取第四行数据并添加到 DataFrame 中
for file in csv_files:
df = pd.read_csv(file, header=None, skiprows=3, nrows=1)
data = pd.concat([data, df], axis=0)
# 将 DataFrame 写入新的 .csv 文件
data.to_csv('output.csv', index=False, header=False)
```
这个脚本会将所有 .csv 文件的第四行数据导出到一个名为 output.csv 的文件中。请注意,您需要将代码中的路径和文件名改为您的实际情况。
读取文件夹里的文件里的.csv文件并作为数据集
可以使用 Python 的 `os` 模块来遍历文件夹中的文件,然后使用 Pandas 的 `read_csv` 方法来读取 CSV 文件并将它们合并为一个数据集。以下是一个示例代码:
```python
import os
import pandas as pd
# 将所有 CSV 文件合并为一个数据集
data = pd.DataFrame()
folder_path = 'your_folder_path'
for file_name in os.listdir(folder_path):
if file_name.endswith('.csv'):
file_path = os.path.join(folder_path, file_name)
df = pd.read_csv(file_path)
data = pd.concat([data, df], ignore_index=True)
# 输出数据集的基本信息
print(data.shape)
print(data.head())
```
其中 `your_folder_path` 是你需要读取的文件夹路径,`os.listdir` 方法可以列出文件夹中所有文件的文件名,然后根据文件名的后缀名筛选出 CSV 文件,并使用 `os.path.join` 方法构造文件的绝对路径,最后使用 Pandas 的 `concat` 方法将所有 CSV 文件合并为一个数据集。