我对R很陌生,所以我可能缺少明显的东西。 我使用R研究了一些数据帧。我也尝试提供一些虚拟数据,但是有了虚拟数据,它突然起作用了,并且我使用的数据很大。也许有人可以帮助我。
我用“ Wavelength”和“ Absorbance”列创建了一个名为haemasc的数据框,并想知道我的Absorbance峰值在哪里,所以我这样写:
haemasc[which(haem$Absorbance==max(haem$Absorbance)),]
为我提供以下输出:
Wavelength Absorbance
109 408 1.647
这是完全错误的,我已经手动检查过,并且该峰值位于波长409的第110行中,其值为1.653(请参见下图)1
奇怪的是,它适用于我正在研究的其他数据框以及我的虚拟数据,所以我真的不知道出了什么问题。
答案 0 :(得分:2)
您能检查max(haem$Absorbance)
本身返回哪一行吗?您可以尝试sort(haem$Absorbance, decreasing=TRUE)
并查看顺序吗?对于您的问题,您还可以使用which.max
返回最大值的索引。
最后-当 嗯,今天是星期一,我们都去过那里。 :)which(haem$Absorbance==max(haem$Absorbance))
返回最大值haem$Absorbance
的索引时,您正在另一个data.frame haemasc
中查找该索引。 / p>