pandas 合并同一目录下的所有文件
pandas merge all files in the same directory
我正在尝试 pd.merge
将同一目录中的所有文件合并为一个文件。这是输入的示例,它们是同一目录中的 excel 个文件:
df1:
A B C
a 1 dog
b 0 dog
c 2 cat
df2:
A D E
a 2 bird
b 4 lion
c 1 cat
df3:
A F G
a 1 seal
b 20 raccoon
c 2 squirrel
这是我想要的输出:
A B C D E F G
a 1 dog 2 bird 1 seal
b 0 dog 4 lion 20 raccoon
c 2 cat 1 cat 2 squirrel
我的代码:
files = glob.glob('/Users/files/*.xlsx')
all_data = pd.merge(files, how='left')
错误:
TypeError: merge() missing 1 required positional argument: 'right'
merge
是否只适用于合并两个文件?
感谢您的帮助!
使用 pd.concat
,索引设置在 A
In [20]: pd.concat(
[pd.read_excel(f).set_index('A') for f in glob.glob('*.xlsx')],
axis=1).reset_index()
Out[20]:
A B C D E F G
0 a 1 dog 2 bird 1 seal
1 b 0 dog 4 lion 20 raccoon
2 c 2 cat 1 cat 2 squirrel
我正在尝试 pd.merge
将同一目录中的所有文件合并为一个文件。这是输入的示例,它们是同一目录中的 excel 个文件:
df1:
A B C
a 1 dog
b 0 dog
c 2 cat
df2:
A D E
a 2 bird
b 4 lion
c 1 cat
df3:
A F G
a 1 seal
b 20 raccoon
c 2 squirrel
这是我想要的输出:
A B C D E F G
a 1 dog 2 bird 1 seal
b 0 dog 4 lion 20 raccoon
c 2 cat 1 cat 2 squirrel
我的代码:
files = glob.glob('/Users/files/*.xlsx')
all_data = pd.merge(files, how='left')
错误:
TypeError: merge() missing 1 required positional argument: 'right'
merge
是否只适用于合并两个文件?
感谢您的帮助!
使用 pd.concat
,索引设置在 A
In [20]: pd.concat(
[pd.read_excel(f).set_index('A') for f in glob.glob('*.xlsx')],
axis=1).reset_index()
Out[20]:
A B C D E F G
0 a 1 dog 2 bird 1 seal
1 b 0 dog 4 lion 20 raccoon
2 c 2 cat 1 cat 2 squirrel