两个数据帧的索引和列的联合
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了两个数据帧的索引和列的联合相关的知识,希望对你有一定的参考价值。
我不确定它是否是正确的表达式,但搜索合并或更改索引并没有让我任何地方。基本上我有两个数据帧:
df_A = pd.DataFrame(1, index=[1,2,3], columns = [1,2,3])
df_B = pd.DataFrame(0, index=[1,2,4], columns = [1,2,5])
我想转换df_A和df_B,使得两者共享相同的索引和列,这两者是两者的联合。缺少的值将用NaN填充:
df_A_new:
1 2 3 5
index
1 1 1 1 NaN
2 1 1 1 NaN
3 1 1 1 NaN
4 NaN NaN NaN NaN
df_B_new:
1 2 3 5
index
1 0 0 NaN 0
2 0 0 NaN 0
3 NaN NaN NaN NaN
4 0 0 NaN 0
答案
rows = df_A.index.union(df_B.index)
cols = df_A.columns.union(df_B.columns)
df_A_new = df_A.reindex(index=rows, columns=cols)
df_B_new = df_B.reindex(index=rows, columns=cols)
df_A_new
看起来像
1 2 3 5
1 1.0 1.0 1.0 NaN
2 1.0 1.0 1.0 NaN
3 1.0 1.0 1.0 NaN
4 NaN NaN NaN NaN
df_B_new
看起来像:
1 2 3 5
1 0.0 0.0 NaN 0.0
2 0.0 0.0 NaN 0.0
3 NaN NaN NaN NaN
4 0.0 0.0 NaN 0.0
以上是关于两个数据帧的索引和列的联合的主要内容,如果未能解决你的问题,请参考以下文章