【问题标题】:Find max/mean/min of the a subset in R查找 R 中子集的最大值/平均值/最小值
【发布时间】:2012-09-10 11:30:37
【问题描述】:

一个简单的问题,但我似乎无法弄清楚。我想在我的数据框的一个子集中找到最大值。

据我所知,它看起来像:

max(data.frame$vector1)[data.frame$vector2=="1",]  

但我收到错误信息,维度数不正确。

然后这个文本应该被用作另一个下标中的逻辑测试

【问题讨论】:

  • 试试max(dataframe$vector1[dataframe$vector2=="1"])

标签: r subset


【解决方案1】:

您的索引命令错误。试试

 max( dataframe[ , "vector1" ] )                              ## all of vector1

为所有人,和

 max( dataframe[ dataframe[,"vector2"]==1 , "vector1" ] )     ## subset

你可以把它写成长格式

 sdfind <- dataframe[,"vector2"]==1
 max( dataframe[sdfind, "vector1"])

您还可以使用subset() 函数,或创建一个临时变量,甚至对vector2 的所有值应用summary() 函数,或..

【讨论】:

  • 它适用于我制作的测试数据框,但是在我的数据集上运行它时,它给出了 NA,即使没有向量包含。向量是带有年份的向量(作为因子给出),向量 1 是周数(作为数字给出)。
  • 学习使用因子/转换因子,例如通过搜索“[r] 因子”。之前都已经解释过了。
  • 你的方法奏效了 :) 我提到的向量已经被一些 mumbo-jumbo 覆盖了:P
猜你喜欢
  • 1970-01-01
  • 2016-01-05
  • 1970-01-01
  • 1970-01-01
  • 2015-01-16
  • 1970-01-01
  • 2018-09-04
  • 2016-12-29
  • 2014-06-11
相关资源
最近更新 更多