我有兩個數據幀只有一些重疊的索引和列。NaN當減去數據幀大熊貓
old = pd.DataFrame(index = ['A', 'B', 'C'],
columns = ['k', 'l', 'm'],
data = abs(np.floor(np.random.rand(3, 3)*10)))
new = pd.DataFrame(index = ['A', 'B', 'C', 'D'],
columns = ['k', 'l', 'm', 'n'],
data = abs(np.floor(np.random.rand(4, 4)*10)))
我想計算他們之間的差異,並試圖
delta = new - old
這給了很多的NaN,其中指數和列不匹配。我想把索引和列的缺失視爲零,(old ['n','D'] = 0)。舊的將永遠是新的子空間。
任何想法?
編輯: 我想我沒有足夠透徹的解釋。我不想用零填充增量數據幀。我想把舊的缺失索引和列視爲零。然後,我會在三角洲而不是NaN中獲得新['n','D']的值。
調用'三角洲= delta.fillna(0)'更換NaN值 – EdChum
我想我沒有解釋不夠徹底。我不想用零填充增量數據幀。我想把舊的缺失索引和列視爲零。然後,我會在三角洲而不是NaN中獲得新['n','D']的值。 –
我會重新打開,一旦我回到電腦,基本上你想要做的是採取兩個dfs列和索引的聯合,重新索引這兩個dfs和填充零與零,然後減去 – EdChum