例如,当我使用select()
from时dplyr
:
mtcars %>% select(., cyl, disp)
正确选择cyl
和disp
。但是,当我在要处理的数据框中执行操作时(假设是iris
):
iris %>% select(., Sepal.Length, Sepal.Width)
它选择Sepal.Length
,Sepal.Width
以及Petal.Length
即使我不告诉选择Petal.Length
。这非常令人沮丧,因为我在文档,stackoverflow或Google中找不到任何解释。
最后,我想知道何时select()
会选择不告诉我选择的列?有什么建议?
编辑-数据:
structure(list(codigo_estacion = 11545000L, institucion = "DGA",
fuente = "dga_web", nombre = "Rio Baker Bajo ÑAdis", altura = 45L,
latitud = -47.5, longitud = -72.9749984741211, codigo_cuenca = 115L,
nombre_sub_cuenca = "Rio Baker Entre Arriba Rio De La Colonia Y Desemb.",
cantidad_observaciones = 4736L, fecha = structure(15624, class = "Date"),
caudal = 692, gauge_id = 11545000L, gauge_name = "Rio Baker Bajo ÑAdis",
precip_promedio = 0.454545468091965, temp_max_promedio = 17.0166664123535,
estacion_ano = "Primavera", caudal_extremo = 0, temp_extremo = 0,
precip_extremo = 0), class = c("grouped_df", "tbl_df", "tbl",
"data.frame"), row.names = c(NA, -1L), groups = structure(list(
codigo_estacion = 11545000L, estacion_ano = "Primavera",
.rows = list(1L)), row.names = c(NA, -1L), class = c("tbl_df",
"tbl", "data.frame"), .drop = TRUE))
我正在使用的代码:
df %>% dplyr::select(codigo_estacion, caudal_extremo)
但它给列estacion_ano
,codigo_estacion
和caudal_extremo
。
您提供的数据是按变量分组的数据框estacion_ano
。在select
分组数据框上使用时,分组变量将自动添加到结果中。您可能想ungroup
在使用之前select
:
df %>%
dplyr::ungroup() %>%
dplyr::select(codigo_estacion, caudal_extremo)
# A tibble: 1 x 2
# codigo_estacion caudal_extremo
# <int> <dbl>
# 1 11545000 0
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句