Создание CSV-данных - PullRequest
       2

Создание CSV-данных

0 голосов
/ 11 октября 2018

Я пытаюсь объединить несколько файлов CSV временного ряда на разных акциях.Мне удалось собрать данные в отдельный файл CSV, и теперь я хочу объединить их все вместе с датой в качестве индекса и сохранить только цену закрытия.Чтобы определить, какой цене закрытия соответствует какой тикер, я должен переименовать столбец «Закрыть» в название тикера, которое содержится в имени файла.Файлы имеют следующие соглашения об именах: «ticker.csv».Этот код основан на веб-сайте pythonprogramming.net, и я попытался приспособиться к моей ситуации.(ссылка здесь: https://pythonprogramming.net/sp500-company-price-data-python-programming-for-finance/)

Я уже искал много решений в Интернете, но никто не ответил на мои проблемы.

Почему мой код говорит мне, что при попытке установить дату есть ошибкав качестве индекса?

Также, если я прокомментирую эту строку и попытаюсь отбросить некоторые столбцы, это говорит о том, что метки не существуют, тогда как в первой строке каждого csv четко указаны. AREX.csv

import os
import glob
import pandas as pd
path = "C:/Users/xx/Desktop/Equity"
path1 = "C:/Users/xx/Desktop/Equity/Merged.csv"

def concatenate(indir=path, outfile = path1):
    os.chdir(indir)
    fileList = glob.glob("*.csv")
    ticker = []
    for filename in fileList:
        print(filename)
        df=pd.read_csv(filename, error_bad_lines=False)
        ticker.append(df)
        df.set_index("date", inplace=True)        
        df.rename(columns = {"close": ticker}, inplace = True)
        df.drop(["Open","High","Low","Volume","Open interest"],axis = 1, inplace=True)
        df=df.join(df, how="outer")

    print(df.head())
    df.to_csv('Merged.csv')

concatenate()

Может ли кто-нибудь помочь мне с этим? В любом случае, большое спасибо за любую помощь, которую вы можете мне дать! :)

1 Ответ

0 голосов
/ 12 октября 2018

Хорошо, я нашел ответ, и вот финальный код:

import os
import glob
import pandas as pd
import shutil
def concatenate(indir="C:/Users/xx/Desktop/Equity_Merton", outfile = "C:/Users/xx/Desktop/Equity_Merton/Merged.csv"):
    os.chdir(indir)    
    fileList = glob.glob("*.csv")
    ticker = []
    main_df = pd.DataFrame()
    for filename in fileList:
        print(filename)
        df=pd.read_csv(filename, sep = ";")
        ticker.append(df)
        df.set_index("Date", inplace=True)        
        df.rename(columns = {"Close": filename[0:len(filename) - 4]}, inplace = True)
#        print(df[filename])
        df.drop(["Open","High","Low","Volume","Open interest"],axis = 1, inplace=True)

        if main_df.empty:
            main_df = df
        else:
            main_df = main_df.join(df, how='outer')

    print(main_df.tail())
    main_df.to_csv('Merton_Merged.csv')         
    shutil.move("Merton_Merged.csv", "../Merton_Merged.csv")

Спасибо @yuca за помощь!Последняя проблема была простой проблемой неопределенности ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...