2017-11-18 70 views
1

我有一个数据帧DF = DF [[“A”,“B”,“C”] 3列和2000行级联数据帧具有不同数目的行的

然后,我有另一组数据只有200行

我怎样才能将这个添加到df ['D'],使这200行将只显示为2000行的尾部? 所以,从0-1800一行DF [“d”]将为NaN,然后​​1801至2000年将是价值

一直在尝试各种方法都没有成功......谢谢

data with 200 rows in this format 
    [[ 0.43628979] 
    [ 0.43454027] 
    [ 0.43552566] 
    [ 0.43542767] 
    [ 0.43331838] 
    ... 
+0

'“..试着用各种方法没有成功......”:你应该在这里发表一些你的尝试。 – rnso

回答

1

我相信你需要join与去年的指数值改变indexdf1

np.random.seed(100) 
df1 = pd.DataFrame(np.random.randint(10, size=(20,3)), columns=list('ABC')) 
print (df1) 
    A B C 
0 8 8 3 
1 7 7 0 
2 4 2 5 
3 2 2 2 
4 1 0 8 
5 4 0 9 
6 6 2 4 
7 1 5 3 
8 4 4 3 
9 7 1 1 
10 7 7 0 
11 2 9 9 
12 3 2 5 
13 8 1 0 
14 7 6 2 
15 0 8 2 
16 5 1 8 
17 1 5 4 
18 2 8 3 
19 5 0 9 

df2 = pd.DataFrame(np.random.randint(10, size=(2,5)), columns=list('werty')) 
print (df2) 
    w e r t y 
0 3 6 3 4 7 
1 6 3 9 0 4 

df2.index = df1.index[-len(df2.index):] 
df = df1.join(df2) 
print (df) 
    A B C w e r t y 
0 8 8 3 NaN NaN NaN NaN NaN 
1 7 7 0 NaN NaN NaN NaN NaN 
2 4 2 5 NaN NaN NaN NaN NaN 
3 2 2 2 NaN NaN NaN NaN NaN 
4 1 0 8 NaN NaN NaN NaN NaN 
5 4 0 9 NaN NaN NaN NaN NaN 
6 6 2 4 NaN NaN NaN NaN NaN 
7 1 5 3 NaN NaN NaN NaN NaN 
8 4 4 3 NaN NaN NaN NaN NaN 
9 7 1 1 NaN NaN NaN NaN NaN 
10 7 7 0 NaN NaN NaN NaN NaN 
11 2 9 9 NaN NaN NaN NaN NaN 
12 3 2 5 NaN NaN NaN NaN NaN 
13 8 1 0 NaN NaN NaN NaN NaN 
14 7 6 2 NaN NaN NaN NaN NaN 
15 0 8 2 NaN NaN NaN NaN NaN 
16 5 1 8 NaN NaN NaN NaN NaN 
17 1 5 4 NaN NaN NaN NaN NaN 
18 2 8 3 3.0 6.0 3.0 4.0 7.0 
19 5 0 9 6.0 3.0 9.0 0.0 4.0 
+0

woohoo〜这件作品感谢jezrael! –

相关问题