R:如何在既有数字项又有非数字项的行中找到最小值?

R:如何在既有数字项又有非数字项的行中找到最小值?,r,row,numeric,min,R,Row,Numeric,Min,我有一个矩阵-第1-371列为数字,第372-379列为非数字(即存储年龄、性别信息)。我想找到每行数字项的最小值(对于每行,查看371个值) 我想做一个计数向量,所以代码是: count_a <- 0 for (i in 1:nrow(data)) { if (min(data[i,][which(data$Age < age & data$Gender == gender)]) <= threshold) { count_a <- co

我有一个矩阵-第1-371列为数字,第372-379列为非数字(即存储年龄、性别信息)。我想找到每行数字项的最小值(对于每行,查看371个值)

我想做一个计数向量,所以代码是:

count_a <- 0
for (i in 1:nrow(data)) {
    if (min(data[i,][which(data$Age < age & data$Gender == gender)]) <= threshold) {
        count_a <- count_a+1
    }
}

count\u a使用CO2数据集,尝试以下方法:

NUM <-function(dataframe)dataframe[,sapply(dataframe,is.numeric)]
apply(NUM(CO2), 1, min)

NUM如果混合了数值列和非数值列,则没有矩阵。您可能有一个data.frame。您可能应该更详细地描述您实际尝试执行的操作,因为从这段代码的外观来看,您还有一些可能不正确的操作。具体来说,您的
which
语句可能没有做您认为它正在做的事情。如果您提供了数据的结构(
str(data)
),也会很有帮助。话虽如此,泰勒的回答(和巴蒂斯特的评论)是正确的。谢谢-对于每一行,我试图在第1-371列中找到最小值。如果第I行的最小值小于阈值,并且如果个人的年龄小于指定的年龄,并且个人的性别是指定的性别,我只希望计数a增加。
apply(Filter(is.numeric,CO2),1,min)