【发布时间】:2020-05-11 11:46:02
【问题描述】:
我有两个数据框,我需要将一个附加到另一个下方。不幸的是,这两个数据框的大小不同:
df1
Mon Tue Wed Thu Fri
11 65 45 76 90
df2
2 7 9 5
*df2 是日期格式
需要的输出如下:
df_new
Mon Tue Wed Thu Fri
11 65 45 76 90
2 7 9 5 0
我尝试了两个数据帧的追加/连接:
df_new = pd.DataFrame( np.concatenate( (df1.values, df2.values), axis=0 ) )
但我收到以下错误:
ValueError:连接轴的所有输入数组维度必须完全匹配,但沿维度 1,索引 0 处的数组大小为 5,索引 1 处的数组大小为 4
只要 df2 形状与 df1 形状不匹配,我想创建 0 值列。因此,我尝试重塑数据框以适应我对增加列的要求,但它不起作用:
new = pd.DataFrame(df2.values.reshape(1, 5))
但我收到以下错误:
ValueError: 无法将大小为 4 的数组重塑为形状 (1,5)
有什么办法吗?
请注意,df1 是一个可变数据帧,每次迭代时大小可能会增加或减少。有什么方法可以保持灵活性而不是实际指定 reshape 中的列数?
【问题讨论】:
-
df2 是系列还是数据框?
-
df1 和 df2 都是数据帧