R 我需要找到一列中的值,给定另一列的三个最小值
我有一个数据集data1,我需要在一列pph中找到最小值,并找出它们在另一列状态(即第1列)中对应的值 这就是我所拥有的R 我需要找到一列中的值,给定另一列的三个最小值,r,R,我有一个数据集data1,我需要在一列pph中找到最小值,并找出它们在另一列状态(即第1列)中对应的值 这就是我所拥有的 data1[which.min(data1$pph), 1] 这给了我最小值以及它在第一列中对应的内容,但我不知道如何找到三个最大最小值以及它们对应的内容。这可以使用dplyr库中的slice_min()轻松完成 # making fake data data1 <- data.frame("pph" = c(1:10), "state&
data1[which.min(data1$pph), 1]
这给了我最小值以及它在第一列中对应的内容,但我不知道如何找到三个最大最小值以及它们对应的内容。这可以使用dplyr库中的
slice_min()
轻松完成
# making fake data
data1 <- data.frame("pph" = c(1:10), "state" = c(rep(c(1,2),5)))
# find min 3 pph but only show state column
data1 %>% slice_min(pph, n = 3) %>% select(state)
#伪造数据
数据1%切片最小值(pph,n=3)%>%选择(状态)
如果需要,您还可以将dplyr管道的输出分配给变量。这可以使用dplyr库中的
slice_min()
轻松完成
# making fake data
data1 <- data.frame("pph" = c(1:10), "state" = c(rep(c(1,2),5)))
# find min 3 pph but only show state column
data1 %>% slice_min(pph, n = 3) %>% select(state)
#伪造数据
数据1%切片最小值(pph,n=3)%>%选择(状态)
如果需要,还可以将dplyr管道的输出分配给变量。使用
base
可以尝试
data1[order(data1$pph)[1:3],"state"]
library(data.table)
setDT(data1)
data1[order(pph)[1:3],"state"]#Here you actually call the three most minimum values
使用data.table
可以尝试
data1[order(data1$pph)[1:3],"state"]
library(data.table)
setDT(data1)
data1[order(pph)[1:3],"state"]#Here you actually call the three most minimum values
或者类似地
data1[order(pph),"state"][1:3] #Here is like you filter the three most minimum values
使用
base
可以尝试
data1[order(data1$pph)[1:3],"state"]
library(data.table)
setDT(data1)
data1[order(pph)[1:3],"state"]#Here you actually call the three most minimum values
使用data.table
可以尝试
data1[order(data1$pph)[1:3],"state"]
library(data.table)
setDT(data1)
data1[order(pph)[1:3],"state"]#Here you actually call the three most minimum values
或者类似地
data1[order(pph),"state"][1:3] #Here is like you filter the three most minimum values
我们可以使用
过滤器
library(dplyr)
data1 %>%
filter(pph == min(pph))
我们可以使用过滤器
library(dplyr)
data1 %>%
filter(pph == min(pph))
尝试which(data1$pph==min(data1$pph))
insteadTrywhich(data1$pph==min(data1$pph))
insteadTry工作得很好!谢谢你的知识,没问题!祝你好运,编码快乐!:)工作得很好!谢谢你的知识,没问题!祝你好运,编码快乐!:)我不确定你是否能用这个方法得到三个最大最小值。我不确定你能用这个方法得到三个最大最小值。