我试图使用dplyr重命名多个变量,但随后我无法访问未重命名的其他列,这不是我从文档中期望的。请注意,我使用重命名的plyr版本来使用此功能,但想使用dplyr版本来避免plyr和dplyr之间的毛茸茸的冲突。
示例:
airports_dest <- nycflights13::airports %>%
rename(lat = lat_dest, lon = lon_dest)) %>%
select(faa,lat_dest, lon_dest)
产量错误:
Error in select(faa, lat_dest, lon_dest) : object 'faa' not found
谢谢!
答案 0 :(得分:1)
您报告的错误是由)
通话结束时额外的rename
引起的。
列在数据集中已经被命名为“ lat”和“ lon”。如果要将它们重命名为“ lat_dest”和“ lon_dest”,请翻转rename
参数。
airports_dest <-
nycflights13::airports %>%
rename(lat_dest = lat, lon_dest = lon) %>%
select(faa, lat_dest, lon_dest)
head(airports_dest)
#> # A tibble: 6 x 3
#> faa lat_dest lon_dest
#> <chr> <dbl> <dbl>
#> 1 04G 41.1 -80.6
#> 2 06A 32.5 -85.7
#> 3 06C 42.0 -88.1
#> 4 06N 41.4 -74.4
#> 5 09J 31.1 -81.4
#> 6 0A9 36.4 -82.2
答案 1 :(得分:1)
您可以这样做:
airports_dest <-
nycflights13::airports %>%
select(faa, lat_dest = lat, lon_dest = lon)