2017-02-06 8 views
0

条件が与えられたデータフレーム内の列のサブセットの平均/中央値を計算する際に興味深い問題が発生しました。Dplyr select() - 数値データが必要です

この時点で、私はアドバイスを必要としますが、この問題は共有する興味深いものになるだろうと思っていないが:median.defaultで

testFile <- data.frame(
    ID = 1:10, Value = rnorm(10), 
    Condition = sample(c("Yes", "No"), 10, replace = T) 
) 
median1 <- median(testFile[testFile$Condition == "Yes", ]$Value) 
median2 <- testFile %>% 
    filter(Condition == "Yes") %>% 
    select(Value) %>% 
    median 

はエラー(。):数値データが必要

ただし、次のコードが機能している:

max2 <- testFile %>% 
    filter(Condition == "Yes") %>% 
    select(Value) %>% 
    max 

values <- testFile %>% 
    filter(Condition == "Yes") %>% 
    select(Value) 

class(values[2,1]) 
非公開にを使用dplyr結果から

[1] "数字"

答えて

0

対処:

median3 <- testFile %>% filter(Condition == "Yes") %>% select(Value) %>% unlist %>% median 

非dplyr溶液、既にOPにmentioinedたとおり

> median1 <- median(testFile[testFile$Condition == "Yes", ]$Value) # Working 
関連する問題