在 pandas 中,它会自动发生,只需调用
pd.concat([df1, df2, df3])
,之前没有该列的框架就会获得一个充满 NaN
s 的列。
在极坐标中,我得到一个
'shape error'
,其中显示列不同的消息(df1
中的 11 列与 df2
中的 12 列)。
Polars 默认情况下关心操作中模式的正确性,并且更喜欢在静默成功之上抛出错误,因为这可能表明程序中存在错误。
如果您想要
polars
添加列,请将 kwarg how="diagonal"
添加到 pl.concat
df_a = pl.DataFrame({
"a": [1, 2, 3],
"b": [True, None, False],
})
df_b = pl.DataFrame({
"a": [4, 5],
"c": ["bar", "ham"]
})
pl.concat([df_a, df_b], how="diagonal")
shape: (5, 3)
┌─────┬───────┬──────┐
│ a ┆ b ┆ c │
│ --- ┆ --- ┆ --- │
│ i64 ┆ bool ┆ str │
╞═════╪═══════╪══════╡
│ 1 ┆ true ┆ null │
│ 2 ┆ null ┆ null │
│ 3 ┆ false ┆ null │
│ 4 ┆ null ┆ bar │
│ 5 ┆ null ┆ ham │
└─────┴───────┴──────┘