library(tidyverse)
df <- tibble(Date = as.Date(c("2020-01-01", "2020-01-02")),
Shop = c("Store A", "Store B"),
Employees = c(5, 10),
Sales = c(1000, 3000))
#> # A tibble: 2 x 4
#> Date Shop Employees Sales
#> <date> <chr> <dbl> <dbl>
#> 1 2020-01-01 Store A 5 1000
#> 2 2020-01-02 Store B 10 3000
我正在按照 dplyr reference guide 从 dplyr spread/gather 切换到pivot_* 。我想通过以下方式收集“员工”和“销售”列:
df %>% pivot_longer(-Date, -Shop, names_to = "Names", values_to = "Values")
#> Error in build_longer_spec(data, !!cols, names_to = names_to,
#> values_to = values_to, : object 'Shop' not found
但是我收到了这个错误。似乎我做的一切都是对的。但我显然不是。你知道出了什么问题吗?
最佳答案
cols
参数是您想要旋转的所有列。您可以将其视为 reshape2::melt
id.vars
参数的补充
df %>% pivot_longer(-c(Date, Shop), names_to = "Names", values_to = "Values")
与:
相同reshape2::melt(df, id.vars=c("Date", "Shop"), variable.name="Names", value.name="Value")
关于r - dplyr `pivot_longer()` 对象未找到,但它就在那里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60459953/