2014-10-17 137 views
1

我试图将列添加到大熊猫数据帧,就像这样:大熊猫数据框中添加一个新的列和fillna

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

如果我可能会建议一个更简洁的标题,例如“添加一个带有重新索引的新列/新索引/非重叠索引” - 因为在问题中没有关于fillna的内容。 – Korem 2014-10-17 18:51:26

回答

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 
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 
相关问题