融合多个csv文件不起作用,只融合其中一个csv文件

2024-04-20 02:43:07 发布

您现在位置:Python中文网/ 问答频道 /正文

将多个csv文件(500个)合并成一个csv文件的问题。当运行应用程序时,它会根据需要创建一个csv文件,但只使用一个ticker。它似乎没有遍历所有存储的csv文件。 这就是输出的样子:CSV output

    for count, ticker in enumerate(tickers):
    df = pd.read_csv('stock_dfs/{}.csv'.format(ticker))
    df.set_index('Date', inplace=True)

    df.rename(columns={'Adj Close': ticker}, inplace=True)
    df.drop(['Open', 'High', 'Low', 'Close', 'Volume'], 1, inplace=True)

    main_df = pd.DataFrame()

    df = df.reset_index()
    df = df.melt(id_vars=['Date'], var_name='Ticker', value_name='Closed')

    main_df = main_df.append(df)

    print(main_df.head())
main_df.to_csv('sp500_joined_closes.csv')

编译数据()


Tags: 文件csvnametrue应用程序dfclosedate
1条回答
网友
1楼 · 发布于 2024-04-20 02:43:07

代替if/else,尝试实例化一个空的数据帧,您将用每个数据帧填充它。你知道吗

main_df = pd.DataFrame()

for count, ticker in enumerate(tickers):
    df = pd.read_csv('stock_dfs/{}.csv'.format(ticker))
    df.set_index('Date', inplace=True)

    df.rename(columns={'Adj Close': ticker}, inplace=True)
    df.drop(['Open', 'High', 'Low', 'Close', 'Volume'], 1, inplace=True)

    df = df.reset_index()
    df = df.melt(id_vars=['Date'], var_name='Ticker', value_name='Closed')

    main_df = main_df.append(df)

    if count % 10 == 0:
        print(count)

print(main_df.head())
main_df.to_csv('sp500_joined_closes.csv')

相关问题 更多 >