该函数需要计数数和使用频率(输入 - 矢量,输出 - 矩阵).(我知道,我怎么能这样做更容易,但我想了解错误).问题是函数在向量中忽略1.
count_elements <- function(x) {
y <- sort(x)
m <- matrix(, nrow = 2, ncol = length(unique(x)))
a <- 1
for (i in 1:length(sort(x))) {
if(is.element(y[i], m)) {
} else {
(m[1, a] <- y[i]) & (m[2, a] <- sum(y == y[i])) & (a <- a+1) }
}
m
}
Run Code Online (Sandbox Code Playgroud)
示例输入和输出:
在向量中没有1
x <- c(2:10, 2, 3:7, -1)
count_elements(x)
# [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
#[1,] -1 2 3 4 5 …Run Code Online (Sandbox Code Playgroud)