У меня есть большой файл и должны соответствовать админ идентификаторами с чем-то пользователей, как это:Пути улучшения для цикла в R
TABLE1 TABLE 2 INDEX V1 IDS AdmID 1 A 30 30 2 U 3 123 3 U 25 60 4 U 4 . 5 U 5 . 6 A 123 . 7 U 7 8 U 8 9 U 9 10 A 60 11 U 26 12 U 2 . . . . . . . . .
Я хочу что-то вроде этого:
COMPLETE TABLE INDEX V1 IDS ADMIN_ID 1 A 30 30 2 U 3 30 3 U 25 30 4 U 4 30 5 U 5 30 6 A 123 123 7 U 7 123 8 U 8 123 9 U 9 123 10 A 60 60 11 U 26 60 12 U 2 60 . . . . . . . . . . . .
Так что я написал этот цикл, но берет навсегда закончить. Любая идея, как использовать применить() на этой ситуации:
ln=10,000;#number of records in the Adm table
TABLE2= index of the adm ids
for (k in 1:ln){
w<-TABLE2$A_ID[k] #Ids of the adms
for(i in seq(from=AdmID[k], to=AdmID[k+1], by=1)){
TABLE1$ADMIN_ID[i]<-w
}
}
Вы можете использовать '? Match' получить числовой индекс или'? Merge', но это не ясно из цикла, что вы пытаетесь сделать – akrun
, какая переменная является вашим «uesrs», и что вы ожидаете, что результат будет выглядеть? – tospig
Да! Используйте «match». –