2017-11-18 110 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! –

相關問題