如何确定矢量中案例的数字位置?
我有一个变量,例如,Var
有多个案例:
Case_1 <- 22
Case_2 <- 33
Case_3 <- 155
Case_4 <- 321
Var <- cbind(c(Case_1,Case_2,Case_3, Case_4))
names(Var) <- c("Case_1","Case_2","Case_3", "Case_4")
Var <- sort(Var, decreasing = TRUE)
我想知道此列表中案例的位置(在此示例中 - Case 4
是位置1
,Case_3
是位置2
,等等。我是在R?
答案 0 :(得分:3)
以下是两种方式:
Case_1 <- 22 Case_2 <- 33 Case_3 <- 155 Case_4 <- 321 Var <- cbind(c(Case_1,Case_2,Case_3, Case_4)) names(Var) <- c("Case_1","Case_2","Case_3", "Case_4") Var <- sort(Var, decreasing = TRUE) # By Value n <- which(Var == 321) cat("The position with a value of 321 is", n)
值为321的位置为1
# By Name n <- which(names(Var) == "Case_1") cat("The position with of Case_1 is", n)
Case_1的位置为4
答案 1 :(得分:1)
您可以使用match()
功能:
myvec <- letters
> myvec
[1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"
> match('e',myvec)
[1] 5
你以这种方式获得索引。
至于你的例子:
Var <- read.table(header=F, text= "Case_1 22
Case_2 33
Case_3 155
Case_4 321")
Var <- Var[order(Var$V1, decreasing=T), ] #sort it decreasing
> match('Case_4',Var$V1)
[1] 1