2017-11-03 12 views
-3

サンプルデータ:R programming_のサブセットの行ロジック条件に

れるsampleData

Ozone Solar.R Wind Temp Month Day sampleData.Ozone 

1  41  190 7.4 67  5 1    41 

2  36  118 8.0 72  5 2    36 

3  12  149 12.6 74  5 3    12 
......... 

ここ条件$ozone > 31

にレコードを抽出するコードである:

data <- sampleData[sampleData$ozone > 31] 

、以下のエラーが表示されます。場合に

エラー(継承(X [J]]、 "data.frame")& &をNcoI(XJ)> 1L)X [J]] < - as.matrix(X [J]]):私はそれを修正する必要がありますどのようにTRUE/FALSE必要な

欠損値?ありがとう!

答えて

1

Rは大文字と小文字が区別されるため、ozonedata.frameの名前と一致する必要があります。またdata.frameのサブセットには、カンマで区切られた2つのインデックス(行と列)が必要です。 data.frameをサブセットに

sampleData[sampleData$Ozone > 31,] 

その他の方法:

subset(sampleData, Ozone > 31) 

またはdplyrと:

library(dplyr) 
sampleData %>% 
    filter(Ozone > 31) 
カンマの後には何も存在しない場合、それはあなたがすべての を選択していることを意味し

結果:

Ozone Solar.R Wind Temp Month Day sampleData.Ozone 
1 41  190 7.4 67  5 1    41 
2 36  118 8.0 72  5 2    36 

データ:

sampleData = structure(list(Ozone = c(41L, 36L, 12L), Solar.R = c(190L, 118L, 
149L), Wind = c(7.4, 8, 12.6), Temp = c(67L, 72L, 74L), Month = c(5L, 
5L, 5L), Day = 1:3, sampleData.Ozone = c(41L, 36L, 12L)), .Names = c("Ozone", 
"Solar.R", "Wind", "Temp", "Month", "Day", "sampleData.Ozone" 
), class = "data.frame", row.names = c("1", "2", "3")) 
関連する問題