假设我定义了以下内容:
s = pd.Series(range(10))
s2 = pd.Series([])
df = pd.DataFrame(np.random.random((4,2)), columns = ['a', 'b'])
df2 = pd.DataFrame({'c':[]})
当我使用pandas concat函数时,它主要给出了我期望的结果:
In [14]: pd.concat([df, df2], axis=1, join='inner')
Out[14]:
Empty DataFrame
Columns: [a, b, c]
Index: []
In [16]: pd.concat([df, s], axis=1, join='inner')
Out[16]:
a b 0
0 0.482953 0.690403 0
1 0.566467 0.934391 1
2 0.876860 0.075017 2
3 0.875775 0.704174 3
但是当我合并两个系列时,其中一个是空的,我没有得到长度为零的结果:
In [23]: pd.concat([s, s2], axis=1, join='inner')
Out[23]:
0
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
这对我来说似乎是不正确的行为,除非它以某种方式成为我不理解的功能。这是一个错误吗?