如何为每个列表元素分配变量名称?

时间:2019-06-23 07:33:19

标签: r

我有一个6个小动作的列表和一个包含6个变量名的向量。我正在尝试为每个小标题分配一个变量名。

我可以通过提取列表元素并将其分配给变量名来实现。

files <- c('sat_results', 'ap_2010', 'class_size', 'demographics', 'graduation', 'hs_directory')
file_names <- paste0(files, '.csv')
fileTb <- map(file_names, read_csv) 
sat_results <- fileTb[[1]]

我该如何使用循环或映射?

2 个答案:

答案 0 :(得分:0)

您可以使用names()函数将名称添加到列表中。

names(YourList) <- c(Vector with names)

示例:

x = as.list(1:5)

names(x) <- LETTERS[1:5]

答案 1 :(得分:0)

解决方案我提出了Ben Bolker帮助。

files <- c('sat_results', 'ap_2010', 'class_size', 'demographics', 'graduation', 'hs_directory')
file_names <- paste0(files, '.csv')
fileTb <- map(file_names, read_csv) 

for (n in 1:length(files)) {
  assign(files[n], fileTb[[n]])
}

我更喜欢使用map而不是for循环。我不知道。