/ / Как да "обединя" множество пандеми с индекс като колона за данни? - python, python-3.x, pandas, индексиране, информационна рамка

Как да "слеем" множество панда данни с индекс като колона за данни? - python, python-3.x, pandas, индексиране, информационна рамка

Имам два панда данни: един:

import pandas as pd
df1 = pd.read_csv("filename1.csv")
df1
A     B
0    1     22
1    2     15
2    5     99
3    6     1
....

и две

df2 = pd.read_csv("filename1.csv")
df2
A     B
0    1     6
1    3     52
2    4     15
3    5     62
...

Бих искал да обединя тези информационни рамки в единна рамка с колони A като индекс за този нов информационен кадър.

Колоните са имена на файлове, редовете са стойностите за "А".

Ако стойностите за този индекс не съществуват, NaN тогава съществува. Имената на графите трябва да са имената на файловете от * csv по-горе.

    filename1    filename2
1   22           6
2   15           NaN
3   NaN          52
4   NaN          15
5   99           62
6   1            NaN

Как се прави това? За два файла може да се използва pandas.merge(), но какво представляват десетките от оригиналните информационни рамки?

Отговори:

2 за отговор № 1
files = ["file1", "file2"]

def read(f):
f = f + ".csv"
df = pd.read_csv(f, usecols=["A", "B"])
return df.drop_duplicates(subset=["A"]).set_index("A").B

pd.concat([read(f) for f in files], axis=1, keys=files)

въведете описанието на изображението тук