我有一个DataFrames字典,其中的键被认为是有意义的:
In [32]: x = pd.DataFrame(dict(foo=[1,2,3], bar=[4,5,6])).set_index('foo')
In [33]: y = pd.DataFrame(dict(foo=[7,8,9], bar=[10,11,12])).set_index('foo')
In [34]: z = dict(x=x, y=y)
看起来像:
In [43]: x
Out[43]:
bar
foo
1 4
2 5
3 6
In [44]: y
Out[44]:
bar
foo
7 10
8 11
9 12
foo bar
x 1 4
2 5
3 6
y 7 10
8 11
9 12
解决方法:
您可以为此使用concat
,并且字典的键将自动用于新的索引级别:
In [6]: z = dict(x=x, y=y)
In [7]: pd.concat(z)
Out[7]:
bar
foo
x 1 4
2 5
3 6
y 7 10
8 11
9 12
您还可以使用concat的names参数为该新索引级别命名(例如,names = [‘key’]).