Как отмечается в комментарии Вена, вы можете использовать квадратную скобку для подмножества, которая принимает имена столбцов в виде строки. Однако, если вы пытаетесь зациклить столбцы, имеет смысл просто зациклить столбцы. Фреймы данных представляют собой списки столбцов, поэтому нет необходимости использовать names()
и подмножества вообще.
Наконец, любое преобразование, которое вы пытаетесь выполнить, вероятно, лучше обслуживать другим методом, например, функцией _apply
или purrr::map_
или dplyr::mutate_all
.
df <- head(airquality)
for (i in names(df)){
print(df[, i])
}
#> [1] 41 36 12 18 NA 28
#> [1] 190 118 149 313 NA NA
#> [1] 7.4 8.0 12.6 11.5 14.3 14.9
#> [1] 67 72 74 62 56 66
#> [1] 5 5 5 5 5 5
#> [1] 1 2 3 4 5 6
for (col in df){
print(col)
}
#> [1] 41 36 12 18 NA 28
#> [1] 190 118 149 313 NA NA
#> [1] 7.4 8.0 12.6 11.5 14.3 14.9
#> [1] 67 72 74 62 56 66
#> [1] 5 5 5 5 5 5
#> [1] 1 2 3 4 5 6
Создано в 2018-05-08 пакетом представ (v0.2.0).