合并空的pandas系列与内部联接不会给出null结果

时间:2014-10-07 01:42:52

标签: python pandas

假设我定义了以下内容:

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

这对我来说似乎是不正确的行为,除非它以某种方式成为我不理解的功能。这是一个错误吗?

0 个答案:

没有答案