小编hac*_*ckR的帖子

dplyr:group_by和group_by_函数之间的区别是什么?

我无法弄清楚group_by_()函数的基于下划线的函数是什么.

来自group_by帮助:

by_cyl <- group_by(mtcars, cyl)  
summarise(by_cyl, mean(disp), mean(hp))  
Run Code Online (Sandbox Code Playgroud)

产生预期:

Source: local data frame [3 x 3]  
    cyl mean(disp)  mean(hp)
1   4   105.1364  82.63636
2   6   183.3143 122.28571
3   8   353.1000 209.21429
Run Code Online (Sandbox Code Playgroud)

但是这个:

by_cyl <- group_by_(mtcars, cyl)  
Run Code Online (Sandbox Code Playgroud)

产生错误:

"Error in as.lazy_dots(list(...)) : object 'cyl' not found"  
Run Code Online (Sandbox Code Playgroud)

所以我的问题是下划线版本的作用是什么?而且,在什么情况下我想要使用它,而不是"常规"?

谢谢

r dplyr

11
推荐指数
1
解决办法
5971
查看次数

仅使用purrr包中的函数从嵌套列表中提取元素

如何仅使用purrr包从嵌套列表中提取元素?在这种情况下,我希望在分割data.frame后得到一个截距矢量.我已经使用lapply()完成了我需要的东西,但我想只使用函数purrr包.

library(purrr)
mtcars %>% 
split(.$cyl) %>%
map(  ~lm(mpg ~ wt, data = .)) %>%        # shorthand  NOTE: ~ lm  
lapply(function(x) x[[1]] [1]) %>% # extract intercepts  <==is there a purrr function for this line?
as_vector()                               # convert to vector
Run Code Online (Sandbox Code Playgroud)

我试过map()和at_depth()但似乎没有什么对我有用.

r purrr

7
推荐指数
1
解决办法
2758
查看次数

RStudio-范围内没有名为“ X”的符号

使用dplyr等软件包时,为什么在RStudio的LHS边距中出现黄色的三角警告?当我开始使用当前版本的RStudio(1.0.136)时,没有任何警告。然后,我开始编码,输入错误的内容,然后出现一堆黄色三角形。但是,如果我重新启动RStudio,我将一无所有。

范围内没有名为X的符号

有没有办法抑制和/或防止这种情况?

r rstudio

5
推荐指数
1
解决办法
1908
查看次数

使用magrittr tee%T>%运算符会产生错误

我正在尝试创建两个图形:整个数据集之一,以及按"站点"分组因子分割时的平均图形.

这是源数据:

site.data <- structure(list(site = structure(c(1L, 1L, 1L, 1L,1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L), 
.Label = c("ALBEN", "ALDER", "AMERI"), class = "factor"),  
year = c(5L, 10L, 20L, 50L, 100L, 200L, 500L, 5L, 10L, 20L, 50L, 100L, 200L, 500L, 5L, 10L, 20L, 50L, 100L, 200L),
peak = c(101529.6, 117483.4, 132960.9, 153251.2, 168647.8, 184153.6, 204866.5, 6561.3, 7897.1, 9208.1, 10949.3,12287.6, 13650.2, 15493.6, 43656.5, 51475.3, 58854.4, 68233.3, 75135.9, 81908.3)),
.Names = c("site", "year","peak"), …
Run Code Online (Sandbox Code Playgroud)

r ggplot2 dplyr

4
推荐指数
1
解决办法
257
查看次数

如何使用dplyr选择多个字段

我有一个字段名称的字符向量,我想用dplyr选择.我正在使用select_()的下划线版本.

select(mtcars, mpg)                   # works OK
select(mtcars, mpg, disp, am)         # works OK for multiple fields
Run Code Online (Sandbox Code Playgroud)

现在让我们使用下划线版本

fie <- c("mpg")             
select_(mtcars, fie)                  # works OK for one
fie <- c("mpg", "disp", "am")
select_(mtcars, fie)                  # problem:  only returns one column
select_(mtcars, ~fie)                 # problem:  doesn't work
Run Code Online (Sandbox Code Playgroud)

我很困惑如何让这个工作.有什么建议?谢谢

r dplyr

4
推荐指数
2
解决办法
3951
查看次数

dplyr frame_data错误"列不是全长相同"

当我从帮助页面复制并粘贴示例时,这可以正常工作:

dplyr::frame_data( 
   ~Club, ~Compensation,
   "a",   1,
   "b",   2
)
Run Code Online (Sandbox Code Playgroud)

然而,当我尝试输入自己的数据时,我收到错误"列不是全长相同".

dplyr::frame_data( 
   ~A,    ~B,
   "NY",  "ABc"
)
Run Code Online (Sandbox Code Playgroud)

我到底做错了什么?这是另一个包含2行数据的示例:

soccer <- dplyr::frame_data( 
   ~A,   ~B,    ~C,        ~D,   ~E,    ~E2,
   "NY", "ABc", "Anatole", "BB", 50000, 50000,
   "NY", "CDe", "Saad",    "D",  60000, 73750
)
Run Code Online (Sandbox Code Playgroud)

r dplyr

4
推荐指数
1
解决办法
598
查看次数

这是任何时候任何函数的错误吗?

我正在尝试转换日期向量,这是可重复性最小的示例.

dates <- c("04-Nov-2013", "20-Jan-2014", "28-Jan-2014", "24-Apr-2014")
library(anytime)
anydate(dates)
Run Code Online (Sandbox Code Playgroud)

我的输出是:

[1] "2013-11-04"  NA  NA  "2014-04-24" 
Run Code Online (Sandbox Code Playgroud)

这对于中间两个元素是不正确的.这是一个错误吗?我的任何时候包的版本是0.1.1

sessionInfo()按要求:

sessionInfo()
R version 3.3.2 (2016-10-31)
Platform: i386-w64-mingw32/i386 (32-bit)
Running under: Windows 7 (build 7601) Service Pack 1

locale:
[1] LC_COLLATE=English_United States.1252 
[2] LC_CTYPE=English_United States.1252   
[3] LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] anytime_0.1.1   lazyeval_0.2.0  magrittr_1.5    lubridate_1.6.0
[5] readr_1.0.0     stringr_1.1.0   dplyr_0.5.0     tidyr_0.6.0    

loaded via a namespace (and not attached): …
Run Code Online (Sandbox Code Playgroud)

r anytime

1
推荐指数
1
解决办法
810
查看次数

标签 统计

r ×7

dplyr ×4

anytime ×1

ggplot2 ×1

purrr ×1

rstudio ×1