Объединение файлов CSV в Python: сохраняйте только 1 столбец каждого файла и присваивайте имена столбцам с оригинальными именами файлов - PullRequest
0 голосов
/ 28 февраля 2019

У меня есть 7 CSV-файлов из 7 акций.Каждый файл имеет один и тот же формат, состоящий из столбцов и строк.

Я применил разные способы объединения этих файлов в 1 кадр данных, но все еще не удается (цикл, использование glob и т. Д.).Я хочу сохранить столбец «Дата» в качестве индекса для фрейма данных и столбец «Высокий» каждого файла рядом друг с другом.Затем столбцы «High» переименовываются на основе названий акций.

import pandas as pd
FDX = pd.read_csv("../Data/FDX.csv")
GOOGL = pd.read_csv("../Data/GOOGL.csv")
IBM = pd.read_csv("../Data/IBM.csv")
KO = pd.read_csv("../Data/KO.csv")
MS = pd.read_csv("../Data/MS.csv")
NOK = pd.read_csv("../Data/NOK.csv")
XOM = pd.read_csv("../Data/XOM.csv")

stocks = pd.DataFrame({"FDX": FDX["High"],
                       "GOOGL": GOOGL["High"],
                       "IBM": IBM["High"],
                       "KO": KO["High"],
                       "MS": MS["High"],
                       "NOK": NOK["High"],
                       "XOM": XOM["High"]
                       })
stocks.head()

В кодах, которые я написал, есть ошибки.В любом случае, чтобы сделать это?Спасибо за ваши ответы!

1 Ответ

0 голосов
/ 28 февраля 2019

Если все они имеют одинаковый диапазон дат, это будет работать.

MergeList = [[GOOGL,'GOOGL'],[IBM,'IBM'],[KO,'KO'],[MS,'MS'],[NOK,'NOK'],[XOM,'XOM']]

NewList = []

for df_t,col_name in MergeList:
    df_t = df_t[['Date','High']]
    df_t.columns = ['Date',col_name]
    NewList.append(df_t)

Merge = FDX

for df_t in NewList:
    Merge = pd.merge(Merge,df_t,on='Date')
...