【问题标题】:dplyr::n() returns “Error: Error: n() should only be called in a data context ”dplyr::n() 返回“错误:错误:n() 只能在数据上下文中调用”
【发布时间】:2023-03-06 03:07:01
【问题描述】:

我得到了以下代码

for (i in c(1:(ncol(df_multi_paths_cols) - 1))) {

  df_cache <- df_multi_paths_cols %>%
    select(num_range("ord_", c(i, i+1))) %>% 
    #select within dataset columns with prefix and within specific range i and i+1
    na.omit() %>% 
    # The na.omit R function removes all incomplete cases of a data object 
    # (typically of a data frame, matrix or vector).
    group_by(.dots = c(paste0("ord_", c(i, i+1)))) %>% 
    #paste=concatenate strings without separator
    #  group_by() takes an existing tbl and converts it into a grouped tbl where
    # operations are performed "by group". ungroup() removes grouping.
    summarise(number = n()) %>%
    # summarise() is typically used on grouped data created by group_by(). The output will 
    # have one row for each group.
    #n()=numbe robservation in the group
    ungroup()

    colnames(df_cache)[c(1, 2)] <- c('channel_from', 'channel_to')
    df_res[[i]] <- df_cache
}

以下错误:

错误:n() 只能在数据上下文中调用

在网上搜索过,但似乎没有描述与此特定错误相关的解决方案。任何提示都超出了我的理解,因为我无法弄清楚为什么 n() 函数在摘要中不起作用。

数据框df_multi_path_cols是这样的:

> df_multi_paths_cols
     ord_1                        ord_2                    ord_3                     ord_4
1  (start)                MANAGER_SASWP            MANAGER_SRSLT             MANAGER_3RDWP
2  (start) GROUPDIRECTOR/CXO_LIVEWEBEXR GROUPDIRECTOR/CXO_SASWEB     GROUPDIRECTOR/CXO_WPR
3  (start)        GROUPDIRECTOR/CXO_SUG                   (null)                      <NA>
4  (start)        GROUPDIRECTOR/CXO_SUG  GROUPDIRECTOR/CXO_3RDWP GROUPDIRECTOR/CXO_SASLIVE
5  (start)        GROUPDIRECTOR/CXO_SUG    GROUPDIRECTOR/CXO_SUG                    (null)
6  (start)             DIRECTOR_3RDLIVE      DIRECTOR_ODSASWEBIN              DIRECTOR_SUG
7  (start)                DIRECTOR_DMCR             DIRECTOR_SUG                    (null)
8  (start)             DIRECTOR_3RDLIVE             DIRECTOR_SUG   GROUPDIRECTOR/CXO_SASWP
9  (start)                 DIRECTOR_SUG            DIRECTOR_EPCR             DIRECTOR_EPCR
10 (start)                 DIRECTOR_SUG             DIRECTOR_SUG             MANAGER_SASWP
11 (start)                  MANAGER_SUG                   (null)                      <NA>
                   ord_5                 ord_6                  ord_7                  ord_8
1          MANAGER_SASWP         MANAGER_EBOOK          MANAGER_3RDWP        MANAGER_ONASOFF
2           (conversion)                  <NA>                   <NA>                   <NA>
3                   <NA>                  <NA>                   <NA>                   <NA>
4  GROUPDIRECTOR/CXO_WBR GROUPDIRECTOR/CXO_SUG GROUPDIRECTOR/CXO_WDLR GROUPDIRECTOR/CXO_WDLR
5                   <NA>                  <NA>                   <NA>                   <NA>
6       DIRECTOR_ONASOFF          DIRECTOR_WPR            MANAGER_SUG           (conversion)

2019 年 4 月 7 日更新

dput(df_multi_paths_cols)

结构(列表(ord_1 = c(“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”,“(开始)”, “(开始)”、“(开始)”、“(开始)”、“(开始)”、“(开始)”、“(开始)” ), ord_2 = c("MANAGER_SASWP", "GROUPDIRECTOR/CXO_LIVEWEBEXR", “GROUPDIRECTOR/CXO_SUG”、“GROUPDIRECTOR/CXO_SUG”、“GROUPDIRECTOR/CXO_SUG”、 “DIRECTOR_3RDLIVE”、“DIRECTOR_DMCR”、“DIRECTOR_3RDLIVE”、“DIRECTOR_SUG”、 “DIRECTOR_SUG”、“MANAGER_SUG”、“TEAMMEMBER_3RDLIVE”、“TEAMMEMBER_3RDLIVE”、 “TEAMMEMBER_OTHR”、“TEAMMEMBER_SASLIVE”、“DIRECTOR_3RDLIVE”、 “DIRECTOR_SASWP”、“DIRECTOR_WBR”、“TEAMMEMBER_EBOOK”、“TEACHER_DMCR”、 “TEACHER_DMCR”、“TEACHER_OTHR”、“TEACHER_RMCHR”、“TEACHER_SUG”、 “TEACHER_WBR”、“DIRECTOR_DMCR”、“DIRECTOR_DMCR”、“DIRECTOR_DMCR”、 “DIRECTOR_SASEXEC”、“DIRECTOR_SASLIVE”、“DIRECTOR_SUG”、“DIRECTOR_SUG”、 “DIRECTOR_SUG”、“TEAMMEMBER_3RDWEBIN”、“_SASLIVE”、“DIRECTOR_SUG”、 “TEAMMEMBER_3RDLIVE”、“DIRECTOR_SASEXEC”、“DIRECTOR_SUG”、“MANAGER_TEL”、 “DIRECTOR_SUG”、“DIRECTOR_3RDLIVE”、“DIRECTOR_DMCR”、“DIRECTOR_SASLIVE”、 “DIRECTOR_SASLIVE”、“DIRECTOR_SUG”、“DIRECTOR_WBR”、“MANAGER_3RDLIVE”、 “MANAGER_SASLIVE”、“MANAGER_SUG”、“_CR”、“DIRECTOR_SASLIVE”、 “DIRECTOR_3RDLIVE”、“DIRECTOR_3RDLIVE”、“TEAMMEMBER_SASLIVE”、 “DIRECTOR_SUG”、“DIRECTOR_TEL”、“MANAGER_3RDLIVE”、“MANAGER_IKR”、 “MANAGER_SASEXEC”、“MANAGER_SASLIVE”、“MANAGER_SEFR”、“MANAGER_TEL”、 “_CR”、“_AR”、“_WPR”、“DIRECTOR_SASLIVE”、“TEAMMEMBER_DMR”、“TEAMMEMBER_ID”、 “TEAMMEMBER_IKR”、“TEAMMEMBER_SASEXEC”、“TEAMMEMBER_SASLIVE”、 “TEAMMEMBER_SEFR”、“TEAMMEMBER_SRSLT”、“TEAMMEMBER_TEL”、“MANAGER_EBOOK”、 “MANAGER_SEFR”、“DIRECTOR_COMR”、“DIRECTOR_CR”、“DIRECTOR_DMR”、 “DIRECTOR_TEL”、“TEAMMEMBER_TEL”、“DIRECTOR_DMR”、“DIRECTOR_SASLIVE”、 “DIRECTOR_SASLIVE”、“DIRECTOR_SRSLT”、“DIRECTOR_TEL”、“DIRECTOR_TEL”、 “MANAGER_SASLIVE”、“MANAGER_WPR”、“MANAGER_WPR”、“TEAMMEMBER_3RDLIVE”、 "TEAMMEMBER_Lead GenerationR", "TEAMMEMBER_SASLIVE", "TEAMMEMBER_COMR", “TEAMMEMBER_CR”、“TEAMMEMBER_DMR”、“TEAMMEMBER_IKR”、“TEAMMEMBER_TEL”、 “DIRECTOR_IKR”、“DIRECTOR_SASLIVE”、“DIRECTOR_SASLIVE”、“DIRECTOR_SASEXEC”、 “MANAGER_CS”、“DIRECTOR_3RDLIVE”、“DIRECTOR_RMCHR”、“DIRECTOR_SASEXEC”、 “DIRECTOR_3RDLIVE”、“DIRECTOR_SASWP”、“MANAGER_CR”、“DIRECTOR_IKR”、 “DIRECTOR_SASLIVE”、“TEAMMEMBER_SASLIVE”、“TEAMMEMBER_CR”、“MANAGER_OTHR”、 “TEAMMEMBER_CR”、“MANAGER_SRSLT”、“DIRECTOR_DMR”、“DIRECTOR_IKR”、 “MANAGER_COMR”、“MANAGER_DMR”、“MANAGER_IKR”、“MANAGER_TEL”、 “DIRECTOR_SASLIVE”、“MANAGER_3RDWP”、“TEAMMEMBER_WS”、“DIRECTOR_3RDLIVE”、 “DIRECTOR_SASLIVE”、“_SASLIVE”、“DIRECTOR_3RDLIVE”、“TEAMMEMBER_3RDLIVE”、 “TEAMMEMBER_COMR”、“TEAMMEMBER_WPR”、“TEAMMEMBER_CR”、“TEAMMEMBER_ARCHWEB”、 “TEAMMEMBER_ASKOD”、“TEAMMEMBER_SASLIVE”、“TEAMMEMBER_SASLIVE”、 “TEAMMEMBER_SASLIVE”、“TEAMMEMBER_SASLIVE”、“TEAMMEMBER_WS”、 "GROUPDIRECTOR/CXO_SASLIVE", "MANAGER_SASLIVE", "GROUPDIRECTOR/CXO_DMCR", "GROUPDIRECTOR/CXO_SASLIVE", "GROUPDIRECTOR/CXO_SEFR", "MANAGER_3RDLIVE",

【问题讨论】:

  • 可以加dput(df_multi_paths_cols)吗?您还可以解释一下您要做什么以及您的预期输出是什么?
  • 输出是一个应该填充空向量:df_res &lt;- vector('list', ncol(df_multi_paths_cols) - 1) ,它由许多 tibbles 与许多 ord_i 和 ord_i+1 列组合组成。因此,例如,第一行(tibble)将是聚合 ord_1 和 ord_2 列的行,并且对于通道的每个组合,计算出现次数。因此,根据示例,对于前两列,以及在这两列中,对于每个通道组合,出现次数
  • 更新:这件事对我来说简直是疯了。将代码更改为:for (i in c(1:(ncol(df_multi_paths_cols) - 1))) { df_cache &lt;- df_multi_paths_cols %&gt;% select(num_range("ord_", c(i, i+1))) %&gt;% na.omit() %&gt;% dplyr::group_by(.dots = c(paste0("ord_", c(i, i+1)))) %&gt;% summarise(number=dplyr::n()) %&gt;% ungroup() colnames(df_cache)[c(1, 2)] &lt;- c('channel_from', 'channel_to') df_res[[i]] &lt;- df_cache } 后代码有效。因为我想确保结果是可复制的,所以我关闭了会话,然后再次运行代码。错误仍然存​​在
  • 顺便说一句,您还没有共享 dput 的数据和预期的输出。没有您的实际数据很难提供帮助。

标签: r dplyr


【解决方案1】:

通过为 dplyr 包的每个函数指定出处的相关包,错误消失了:

for (i in c(1:(ncol(df_multi_paths_cols) - 1))) {

  df_cache <- df_multi_paths_cols %>%
    select(num_range("ord_", c(i, i+1)))   %>% 
    na.omit()  %>% 
    dplyr::group_by(.dots = c(paste0("ord_", c(i, i+1))))  %>% 
    dplyr::summarise(number=dplyr::n())  %>%
    ungroup() 

    colnames(df_cache)[c(1, 2)] <- c('channel_from', 'channel_to')
    df_res[[i]] <- df_cache
}

现在我几乎认为这是与具有相同函数名称“summarise”的其他包的某种冲突,正如

所证明的那样
> conflicts()
  [1] "predictors"    "%>%"           "compact"       "lift"          "cols"          "%>%"          
  [7] "%>%"           "shift"         "take"          "transpose"     "%>%"           "add_row"      
 [13] "arrange"       "as_data_frame" "as_tibble"     "between"       "coalesce"      "count"        
 [19] "data_frame"    "data_frame_"   "desc"          "failwith"      "first"         "frame_data"   
 [25] "glimpse"       "id"            "last"          "lst"           "lst_"          "mutate"       
 [31] "n"             "rename"        "summarise"     "summarize"     "tbl_sum"       "tibble"       
 [37] "tribble"       "trunc_mat"     "type_sum"      "matches"       "%>%"           "%>%"          
 [43] "expand"        "expm"          "t"             "%>%"           "enexpr"        "enexprs"      
 [49] "enquo"         "enquos"        "ensym"         "ensyms"        "expr"          "quo"          
 [55] "quo_name"      "quos"          "sym"           "syms"          "vars"          "dcast"        
 [61] "melt"          "smiths"        "coerce"        "plot"          "print"         "show"         
 [67] "summary"       "t"             "cov"           "cov2cor"       "df"            "filter"       
 [73] "lag"           "lowess"        "predict"       "smooth"        "toeplitz"      "update"       
 [79] "var"           "image"         "plot"          "?"             "data"          "head"         
 [85] "tail"          "Arith"         "cbind2"        "coerce"        "Compare"       "kronecker"    
 [91] "Logic"         "Math"          "Math2"         "Ops"           "rbind2"        "show"         
 [97] "Summary"       "all.equal"     "as.array"      "as.matrix"     "body<-"        "chol"         
[103] "chol2inv"      "colMeans"      "colSums"       "crossprod"     "det"           "determinant"  
[109] "diag"          "diag<-"        "diff"          "drop"          "format"        "intersect"    
[115] "isSymmetric"   "kronecker"     "mean"          "norm"          "Position"      "print"        
[121] "qr"            "qr.coef"       "qr.fitted"     "qr.Q"          "qr.qty"        "qr.qy"        
[127] "qr.R"          "qr.resid"      "rcond"         "rowMeans"      "rownames"      "rowSums"      
[133] "setdiff"       "setequal"      "solve"         "summary"       "t"             "tcrossprod"   
[139] "union"         "unname"        "url"           "which"         "zapsmall"    

【讨论】:

    【解决方案2】:

    这是因为包中的冲突,即“dplyr”包和“plyr”包中都存在summarize/summarise。很可能该函数是从错误的包中调用的,从而导致此错误。我们可以在引用其包的同时调用该函数以避免此类问题。

    演示:

    # Call summarise from plyr library
    plyr::summarise(count = n())
    
    # Call summarise from dplyr library
    dplyr::summarise(count = n())
    

    我认为这会有所帮助,如果您有任何问题,请告诉我。干杯。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-12-15
      • 2020-03-13
      • 2017-01-11
      • 2017-02-20
      • 2014-05-13
      相关资源
      最近更新 更多