2016-06-20 6 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 первого наблюдения в шесть раз (потому что в "Total" 6).

У меня есть 590 таких наблюдений. Я хотел бы знать, как закодировать его в R.

+0

Ваш вопрос довольно загадочен, не могли бы вы показать некоторые из того, что вы сделали, чтобы мы могли разобраться с проблемой? – Badger

+1

Упрощенный ответ, но поставленный вопрос, потому что ответа нет через 3 часа. –

ответ

1

Если критерием является репликация строк на основе значений в «Всего», используйте 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)),] 
Смежные вопросы