全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1115 6
2016-09-26
基于dplyr包,我写了个函数,做分类统计。如下所示
复制代码
但是跑出来的结果是,Error: unknown column catergory'

我觉得可能是dplyr的函数group_by对参数的调用格式问题。请问这个怎么改呢?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-9-26 18:58:18
dplyr和ggplot的编程好像涉及到Non-standard evaluation https://cran.r-project.org/web/packages/lazyeval/vignettes/lazyeval.html,是不是需要用到lazyeval包。
或是改为group_by_试试。也需要这方面的指导,等待高手
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-9-26 19:21:11
catergory变量也要放在data.frame格式的data中,禁止单列。。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-9-26 19:29:00
library(dplyr)
CatergoryStat <- function(data, catergory, args){    if ( is.data.frame(data)) stop(" "data" is not "data.frame" ")  ##data 须是data.frame
     data$catergory<-catergory   ###将catergory 加入data
     data$args<-args    ####将args 加入data
    output <- data %>%
        group_by(catergory) %>%
        summarise(obs = n(), mean_args = mean(args))  ###mean 不是好变量
}
####data、 catergory ,args ,mean 均不是好变量,因R 中均有这些具特定含义的函数名
test <- CatergoryStat(data = source, catergory = "mkt",  args = "pe")
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-9-26 19:31:26
library(dplyr)
CatergoryStat <- function(data, catergory, args){  
  if (! is.data.frame(data)) stop(" "data" is not "data.frame" ")  ##data 须是data.frame 。。#上楼缺了 "!"...
     datacatergory<-catergory   ###将catergory 加入data  
     datacatergory<-catergory   ###将catergory 加入data       dataargs<-args    ####将args 加入data
    output <- data %>%
        group_by(catergory) %>%
        summarise(obs = n(), mean_args = mean(args))  ###mean 不是好变量
}
####data、 catergory ,args ,mean 均不是好变量,因R 中均有这些具特定含义的函数名
test <- CatergoryStat(data = source, catergory = "mkt",  args = "pe")
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-9-26 19:36:28
jgchen1966 发表于 2016-9-26 19:31
library(dplyr)
CatergoryStat
这是不得已将就的“笨拙”的写法。。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群