我有很多想要分组的结果。
示例分组是
> results$netting$codes[[1]]
[1] "7,4,5,9,39"
如果我对该组进行硬编码,我会得到我正在寻找的结果。
dplyr::filter(xCategories,xCategories$code %in% c( 7,4,5,9,39 ))
code frequency percentage
1 4 124 20.462046
2 4 124 20.462046
3 4 124 20.462046
4 4 124 20.462046
5 5 112 18.481848
6 5 112 18.481848
7 5 112 18.481848
8 5 112 18.481848
9 7 65 10.726073
10 7 65 10.726073
11 7 65 10.726073
12 7 65 10.726073
13 9 64 10.561056
14 9 64 10.561056
15 9 64 10.561056
16 9 64 10.561056
17 39 8 1.320132
如果我引用该组,我就没有结果。
> dplyr::filter(xCategories,xCategories$code %in% c( results$netting$codes[[1]] ))
[1] code frequency percentage
<0 rows> (or 0-length row.names)
或
> dplyr::filter(xCategories,xCategories$code %in% c( as.vector(results$netting$codes[[1]]) ))
[1] code frequency percentage
<0 rows> (or 0-length row.names)
如何将列分隔符转换为R?
中的向量答案 0 :(得分:1)
对于右侧,您可能需要使用scan()
。它可以读取分隔的字符串并自动将结果转换为数字。
scan(text = results$netting$codes[[1]], sep = ",")
示例:
scan(text = "7,4,5,9,39", sep = ",")
# Read 5 items
# [1] 7 4 5 9 39
1:10 %in% scan(text = "7,4,5,9,39", sep = ",")
# Read 5 items
# [1] FALSE FALSE FALSE TRUE TRUE FALSE TRUE FALSE TRUE FALSE