Допустим, у меня есть цикл, и в каждом цикле есть результат таблицы, подобный этому:
#Looping Result Data
value <- c("A1", "A2", "A3", "A4")
value.dat <- rep("Yes", 4)
n <- c(4, 1, 2, 4 )
resloop <- data.frame(value, value.dat, n)
Внутри цикла я хочу иметь (в конце) сводную таблицу для каждого цикла, и таблица выглядиткак это:
Country <- rep(c("Germany", "France"), each=12)
Sectoral <- rep(c("A-A", "B-A", "B-B", "A-C", "C-B", "C-C"), times=4)
Connection <- rep(c("Yes", "No"), each=6)
Freq.Ind <- NA
t.sum<- data.frame(Country, Sectoral, Connection, Freq.Ind)
Freq.Ind должен быть заполнен значением из resloop, которое имеет наибольшее n (поэтому может быть больше одного значения, если есть такие же большие n)
Такесли сейчас в цикле:
i<-"Germany"
j<-"A-A"
Я хочу в первой строке Freq.Ind заполнить: A1, A4
Я пробовал что-то подобное, но что-то все еще не так :( (новичок)
t.sum[t.sum$Country == i && t.sum$Sectoral == j && t.sum$Connection == "Yes", "Freq.Ind"]<- as.character(resloop$value[resloop$n==max(resloop$n)])
t.sum$Freq.Ind <- ifelse( t.sum$Country == i & t.sum$Sectoral == j & t.sum$Connection == "Yes", as.character(resloop$value[resloop$n==max(resloop$n)]), next )
t.sum %>%
mutate(Freq.Ind=replace(Freq.Ind, Country == i & Sectoral == j & Connection == "Yes" ,as.character(resloop$value[resloop$n==max(resloop$n)])))
Спасибо