首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在R中,如何识别值属于哪一行

在R中,如何识别值属于哪一行
EN

Stack Overflow用户
提问于 2013-10-16 02:03:00
回答 2查看 166关注 0票数 1

我对R完全陌生.我真的很感谢你的帮助!这是我的问题。我有一个数据集,它是关于不同饲料喂养的鸡的体重增加。我为所有数据创建了一个data.frame。我想找出体重增加最少的鸡的身份。因此,我首先对数据进行排序:sort(all$'weight.diff'),但我不知道如何从体重增加最少的鸡中提取所有信息。我还想知道如何为体重增加最多的鸡确定饮食。

下面是我所拥有的数据的一个例子

代码语言:javascript
复制
X1 <- c(1,2,3,4,5,6,7,8,9,10,11,12) 
X2 <- c('A','B','B','D','D','A','A','A','B','C','C','A') 
X3 <- c(126,114,128,120,68,106,112,163,109,158,117,83) 
X4 <- c(269,212,259,231,76,220,288,318,250,361,197,169) 
all <- data.frame('ID'=X1,diet=X2,'10'=X3,'20'=X4) 
all X5 <- X4-X3 
all <- data.frame(all,'diff'=X5) 
all sort(all$'diff')

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-16 02:20:07

您的代码中有一些bug,我认为您指的是所有的$X5。在那之后你什么都不需要。

这两种方法中的任何一种都可以提取出所增加的重量最少的信息。

代码语言:javascript
复制
all[which(all$X5 == min(all$X5)), ]

all[order(all$X5), ][1, ]

为了从所获得的权重中获得信息,只需添加递减= TRUE位,然后将第一行只包含您感兴趣的列。

代码语言:javascript
复制
all[order(all$X5, decreasing = TRUE), ][1, 'diet']
票数 0
EN

Stack Overflow用户

发布于 2013-10-16 02:07:26

不需要在这里排序,您可以使用which.min

代码语言:javascript
复制
all[which.min(all$diff),]
  ID diet X3 X4 diff
5  5    D 68 76    8

PS :要创建变量diff,可以这样做:

代码语言:javascript
复制
all <- data.frame('ID'=X1,diet=X2,X3=X3,X4=X4) 
all <- transform(all,diff=X4-X3)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19394063

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档