私はRが初めてで、構文に苦労しています。次のデータ フレーム データがあるとします。
value label second
1 a q
2 a q
3 a ASDF
4 b q
6 b QWERTY
6 b QWERTY
7 c q
8 c q
9 c q
10 d q
ここで、 の指定された値のdf$second
の最大値に対応するのベクトルを取得したいと考えています。たとえば、 が与えられた場合、を返したいとします。のために、私は戻りたいです。df$value
df$label
df$label = 'a'
'ASDF'
df$label = 'b'
'QWERTY', 'QWERTY'
これが私が試していることです:
max_value <- max(data$value[data$label == 'a'])
result <- c()
for (x in data$value){
if (x == max_value){
result <- c(result, data$second)
}
}
現在、これは適切な結果ベクトルを生成しません。sapply、tapply、mapply などを使用してこれを行う方法を見つけたいと思います。これらの機能について頭を悩ませているだけです。どんな助けでも大歓迎です。