在数据框上执行expand.grid()时出错

时间:2018-09-08 18:48:02

标签: r dataframe character

我在expand.grid()上执行subdb,该如何解决?

full <- with(subdb, expand.grid(sort(unique(UserId), sort(unique(ProductId))))
  

eval(substitute(expr),data,enclos = parent.frame())中的错误:     类型为'character'的'envir'参数无效

为什么我会收到此错误?

subdb是包含“ UserId”,“ ProductId”和“ Score”的数据框。

1 个答案:

答案 0 :(得分:0)

您在第一次调用sort()时遗漏了括号,即应为sort(unique(UserId))而不是sort(unique(UserId)

例如,以下对我有用:

subdb <- data.frame("UserId" = sample(1:10, 200, replace = TRUE),
                    "ProductId" = sample(LETTERS[1:8], 200, replace = TRUE))

full <- with(subdb, expand.grid(sort(unique(UserId)), 
                                sort(unique(ProductId))))

full