vp_*_*050 2 pivot-table r data-conversion
我正在处理一个包含所有数字类型变量的数据框
summary.default(pfnew)
Run Code Online (Sandbox Code Playgroud)
我想创建一个按迭代器和 CV 分组的数据透视表并汇总 ID 的计数。本质上,我想要数据框中对应于一组特定迭代器和 CV 值的点数。我使用的代码是:
代码
install.packages("tidyr")
install.packages("dplyr")
install.packages("vctrs")
library(vctrs)
library(tidyr)
library(dplyr)
allow_lossy_cast(pivot<-pfnew%>%
select(pfnew$iterator,pfnew$CV,pfnew$ID)%>%
summarise(CT=count(pfnew$ID)))
Run Code Online (Sandbox Code Playgroud)
但正如其他论坛中所讨论的,即使在使用allow_lossy_cast之后,我也收到了相同的错误消息。
错误:必须使用有效的下标向量对列进行子集化。x 由于精度损失,无法从 转换为 。
我们该如何解决这个问题?或者我们可以用其他方式做同样的工作吗?
小智 6
我刚刚使用不同的 dplyr 函数遇到了相同的错误,并意识到我在调用它后包含了数据帧的名称。尝试从 select 和 summarise 中删除 pfnew$ ,这样它就是 select(c(iterator, CV,ID)) 。