【问题标题】:Error in (function (classes, fdef, mtable) : unable to find an inherited method for function ‘n’ for signature ‘"missing"’(函数(类,fdef,mtable)中的错误:无法找到签名“缺失”的函数“n”的继承方法
【发布时间】:2019-09-19 04:37:37
【问题描述】:

我在 (function (classes, fdef, mtable) 中遇到错误:无法为签名 '"missing"' 的函数 'n' 找到继承的方法,我无法弄清楚问题出在哪里.

我正在使用我自己的数据来关注 Trevor Paulsen 的示例 Visualizing the Customer Journey with R and Adobe Analytics Data Feeds。我在下面提供了我的数据示例。

library(dplyr)
library(plotly)

##data example
newdata <- data.frame(customer_id = c(
10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133
,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133
,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133
,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133
,10002133,10002133,10002133,10002133,10002133,10002133,10002133,10002133)
,f_ev = c('hb - transferencias','hb - transferencias','hb - error acceso transferencias'
,'hb - error acceso error app transferencias','hb - error acceso'
,'hb - consulta transferencias','hb - consulta transferencias','hb - consulta transferencias'
,'hb - consulta transferencias','hb - consulta transferencias','hb - consulta transferencias'
,'hb - consulta transferencias','hb - consulta transferencias','hb - consulta transferencias'
,'hb - consulta transferencias','hb - consulta transferencias','hb - consulta transferencias'
,'hb - consulta transferencias','hb - consulta transferencias','hb - consulta transferencias'
,'hb - consulta transferencias','hb - consulta pago transferencias','hb - consulta pago transferencias'
,'hb - consulta pago transferencias','hb - consulta pago','hb - consulta pago'
,'hb - consulta error app transferencias','hb - consulta error app transferencias'
,'hb - consulta error app transferencias','hb - consulta error app pago transferencias'
,'hb - consulta error app','hb - consulta error acceso transferencias','hb - consulta'
,'hb - consulta','hb - consulta','hb - consulta','hb - consulta','hb - consulta'
,'hb - consulta','hb - consulta','hb - consulta','hb - consulta','hb - consulta'
,'hb - consulta','hb - consulta','hb - consulta','hb - consulta'
,'hb - alerta producto o servicio consulta transferencias','hb - alerta producto o servicio consulta error app'
,'hb - alerta producto o servicio consulta','hb - alerta producto o servicio consulta'
,'hb - alerta producto o servicio consulta')
,conversion = c(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
,order_seq = c(52,51,50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,34,33,32,31,30,29,28,27,26,25,24,23,22,21,20
,19,18,17,16,15,14,13,12,11,10, 9, 8, 7, 6, 5, 4, 3, 2, 1)
)

##path generation
paths_stacks = newdata %>% 
  group_by(customer_id) %>% 
  summarize(path = paste0(f_ev, collapse =  " > "),
            conversion = max(conversion)) %>% 
  ungroup() %>%
  group_by(path) %>%
  summarize(
    conversion = sum(conversion),
    path_count = n()
  ) %>% ungroup() %>%
  mutate(
    conversion_rate = conversion/path_count
  ) 

结果是错误:

(函数(类,fdef,mtable)中的错误: 无法找到签名“缺失”的函数“n”的继承方法

【问题讨论】:

  • 示例在我的情况下不起作用。好像没有逗号...
  • @Christoph,是的,你是对的,谢谢。我更正了逗号

标签: r


【解决方案1】:

解决了! 我的脚本中有 SparkR 库,它屏蔽了与 dplyr 同名的函数。使用适当的库更正脚本,它可以正常工作

##corrected script
paths_stacks = newdata %>% 
  dplyr::group_by(customer_id) %>% 
  dplyr::summarize(path = paste0(f_ev, collapse =  " > "),
            conversion = max(conversion)) %>% 
  dplyr::ungroup() %>%
  dplyr::group_by(path) %>%
  dplyr::summarize(
    conversion = dplyr::sum(conversion),
    path_count = dplyr::n()
  ) %>% ungroup() %>%
  dplyr::mutate(
    conversion_rate = conversion/path_count
  ) 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-02
    • 2017-09-02
    • 2018-11-28
    • 1970-01-01
    • 2021-12-24
    • 2019-09-30
    • 2015-11-16
    • 1970-01-01
    相关资源
    最近更新 更多