Мне нужно переименовать столбец в списке данных. Имя нового столбца должно отражать имя кадра данных, к которому он принадлежит. Например, я хотел бы переименовать столбец «Письма» в «1» и «2» соответственно («Письма_1» и «Письма_2») или что-то похожее также работает.
Вот воспроизводимый пример
#Create a list containing dataframes
datasets=list()
Numbers <- c(1,2,3,4)
Letters <- c("A","B","C","D")
DF1 <- data.frame(Numbers, Letters)
Numbers <- c(1,9,3,14)
Letters <- c("A","Z","C","X")
DF2 <- data.frame(Numbers, Letters)
datasets[[1]] <- DF1
datasets[[2]] <- DF2
head(datasets[])
В этом примере создается следующая структура данных
[[1]]
Numbers Letters
1 1 A
2 2 B
3 3 C
4 4 D
[[2]]
Numbers Letters
1 1 A
2 9 Z
3 3 C
4 14 X
Мой желаемый результат ниже
[[1]]
Numbers 1
1 1 A
2 2 B
3 3 C
4 4 D
[[2]]
Numbers 2
1 1 A
2 9 Z
3 3 C
4 14 X
Вот моя попытка использовать цикл for.
# Rename column using for loop
list <- c(1,2)
for (name in list){
colnames(datasets[[print(paste(`name`, sep=""))]][2]) <- c(print(paste(`name`, sep="")))
}