Python 如何在将键值与列名称匹配时向数据帧添加字典?

Python 如何在将键值与列名称匹配时向数据帧添加字典?,python,pandas,Python,Pandas,假设我有以下数据框: s1 = pd.Series({'A': 1, 'B': 2, 'C': 3}) s2 = pd.Series({'A': 4, 'B': 5, 'C': 6}) s3 = pd.Series({'A': 7, 'B': 8, 'C': 9}) df = pd.DataFrame([s1, s2, s3]) print(df) 我想将下面的s4、s5和s6系列分别添加到s1、s2和s3行,同时使用字典键创建一个列(如果其中一个不存在),并用0填充所有其他列值 s4 =

假设我有以下数据框:

s1 = pd.Series({'A': 1, 'B': 2, 'C': 3})
s2 = pd.Series({'A': 4, 'B': 5, 'C': 6})
s3 = pd.Series({'A': 7, 'B': 8, 'C': 9})

df = pd.DataFrame([s1, s2, s3])
print(df)
我想将下面的s4、s5和s6系列分别添加到s1、s2和s3行,同时使用字典键创建一个列(如果其中一个不存在),并用0填充所有其他列值

s4 = pd.Series({'D': 2, 'G': 8})
s5 = pd.Series({'E': 5})
s6 = pd.Series({'D': 6, 'E': 3})
我想要的结果数据帧如下所示:

s7 = pd.Series({'A': 1, 'B': 2, 'C': 3, 'D': 2, 'G': 8, 'E': 0})
s8 = pd.Series({'A': 4, 'B': 5, 'C': 6, 'D': 0, 'G': 0, 'E': 5})
s9 = pd.Series({'A': 7, 'B': 8, 'C': 9, 'D': 6, 'G': 0, 'E': 3})

df2 = pd.DataFrame([s7, s8, s9])
print(df2)
有没有一种简单的方法可以做到这一点?

pd.concat([df,pd.DataFrame([s4,s5,s6]),axis=1)。fillna(0)
df=df.append(pd.DataFrame([s4,s5,s6])。fillna(0)
df1=pd.concat([s4,s5,s6])。fillna(0))。
df([s4,s5,s6]).fillna(0))?
df1=pd.数据帧([s4,s5,s6])
df.连接(df1).fillna(0)