2016-06-20 65 views
-2

我想根據某些標準添加觀察值。根據R中的某些標準添加觀察值

例如:

SN  Species  Habitat  X_Cor Y_cor  Total 
1  monkey  grassland  4444 6666  6 
2  porcupine  agri_Land  6666 5555  20 

我想加起來觀察到60倍。在上面,第一次觀察要重複54次(60-5),其中「總計」值爲0.第二次觀察重複40次(60-20)。

此外,

我想repeate第一觀察六次(因爲在 「總計」 6)。

我有590個這樣的觀察。我想知道如何在R中編碼。

+0

您的問題相當含糊,您能否展示一些您已經完成的工作,以便我們梳理出問題所在? – Badger

+1

Upvoted the answer but downvoted the question because because no response after 3 hours。 –

回答

1

如果條件是基於'Total'中的值複製行,請使用rep複製行序列。

df1[rep(1:nrow(df1), df1$Total),] 

,或者如果我們需要一個包裝

library(splitstackshape) 
expandRows(df1, "Total") 

描述的部分add observation upto 60 times. In above, the first observation is to be repeated 54 times (60-5)並不清楚的例子顯示。如果我們需要根據描述進行復制

df1[rep(1:nrow(df1), c(54, 40)),]