6

これは、本来あるべき関数を使用していないだけで、ばかばかしいほど簡単なことの 1 つだと感じています。

関数の関連部分は次のとおりです。

min(DATASET$COLUMNNAME, na.rm = TRUE)

現在、COLUMNNAME から正しい値 (その列の最小値) を報告しています。偉大な。ただし、私が本当にやりたいことは、データフレーム全体を調べて、列 NAME の結果のエントリを表示し、それを出力することです。COLUMNAME の最小値を持つ行の NAME のエントリだけを出力する必要があります。

どういうわけかその最小値の行番号を取得し、 DATASET$NAM​​E[row,] を返すための最良の方法はありますか?

4

2 に答える 2

24

あなたが探している機能は次のwhich.minとおりです。

> set.seed(123)
> df<-data.frame(name=sample(LETTERS[1:10]),value=sample(10))
> df
   name value
1     C    10
2     H     5
3     D     6
4     G     9
5     F     1
6     A     7
7     J     8
8     I     4
9     B     3
10    E     2
> df[which.min(df$value),]
  name value
5    F     1
> df$name[which.min(df$value)]
[1] F
Levels: A B C D E F G H I J
于 2013-10-11T21:07:55.880 に答える