我正在尝试向pandas数据框添加一个列,如下所示:
df = pd.DataFrame()
df['one'] = pd.Series({'1':4, '2':6})
print (df)
df['two'] = pd.Series({'0':4, '2':6})
print (df)
这会产生:
one two
1 4 NaN
2 6 6
但是,我的结果是,
one two
0 NaN 4
1 4 NaN
2 6 6
你是怎么做到的?
答案 0 :(得分:4)
一种可能性是使用pd.concat
:
ser1 = pd.Series({'1':4, '2':6})
ser2 = pd.Series({'0':4, '2':6})
df = pd.concat((ser1, ser2), axis=1)
获取
0 1
0 NaN 4
1 4 NaN
2 6 6
答案 1 :(得分:2)
你可以使用join
,告诉大熊猫你想要怎么做:
df = pd.DataFrame()
df['one'] = pd.Series({'1':4, '2':6})
df.join(pd.Series({'0':4, '2':6}, name = 'two'), how = 'outer')
这导致
one two
0 NaN 4
1 4 NaN
2 6 6