Python Concat具有不同列数的两个数据透视表(以熊猫为单位)

Python Concat具有不同列数的两个数据透视表(以熊猫为单位),python,pandas,pivot-table,Python,Pandas,Pivot Table,我有两个具有不同列数的透视表,我需要创建一个表,在单元格中使用逗号分隔值,但在第一个表中未显示的单元格中使用0 比如说 Table 1 1 3 4 a t1a1 t1a3 t1a4 b t1b1 t1b3 t1b4 Table 2 1 2 3 4 a t2a1 t2a2 t2a3 t2a4 b t2b1 t2b2 t2b3 t2b4 我想: 1

我有两个具有不同列数的透视表,我需要创建一个表,在单元格中使用逗号分隔值,但在第一个表中未显示的单元格中使用0

比如说

Table 1

       1      3    4
a     t1a1  t1a3 t1a4
b     t1b1  t1b3 t1b4

Table 2

       1    2    3    4
a     t2a1 t2a2 t2a3 t2a4
b     t2b1 t2b2 t2b3 t2b4
我想:

           1             2           3            4
a     (t1a1,t2a1)   (0,t2a2)  (t1a3,t2a3)   (t1a4,t2a4)
b     (t1b1,t2b1)   (0,t2b2)   (t1b3,t2b3)   (t1b4,t2b4)
功能

df = '(' + df1.astype(str) + ' , ' + df2.astype(str) + ')'
print (df)
返回

         1         2         3              4
a  (t1a1 , t2a1)  NaN  (t1a3 , t2a3)  (t1a4 , t2a4)
b  (t1b1 , t2b1)  NaN  (t1b3 , t2b3)  (t1b4 , t2b4)

我使用Python和pandas库一起工作。

调用
df.reindex
,您就可以开始了

'(' + df1.reindex(columns=df2.columns, fill_value='0') + ', ' + df2 + ')'

              1          2             3             4
a  (t1a1, t2a1)  (0, t2a2)  (t1a3, t2a3)  (t1a4, t2a4)
b  (t1b1, t2b1)  (0, t2b2)  (t1b3, t2b3)  (t1b4, t2b4)
请注意,您拥有的是字符串列,而不是元组列。这是不同的