#r #for-loop
#r #для цикла
Вопрос:
Я хочу добавить сумму двух столбцов во фрейме данных к имени фрейма данных, используя цикл for . Список names_2 содержит имена фреймов данных.
for(i in names_2){
total_1 = sum(i$V3)
total_2 = sum(i$V4)
i <- paste(i,total_1,total_2,sep = "_")
}
Я получаю сообщение об ошибке, потому что оно не распознает, что я пытаюсь вызвать фрейм данных. Есть мысли?
Ответ №1:
Попробуйте следующее :
#Get data in a list
list_df <- mget(names_2)
#Sum the two columns and paste it together
total_title <- sapply(list_df, function(x) paste(colSums(x[c('V3', 'V4')]), collapse = '_'))
#Rename the list
names(list_df) <- paste(names_2, total_title, sep = '_')
#Create new dataframes with new names
list2env(list_df, .GlobalEnv)