A: 条件を満たす最初の行を見つける方法
次のメソッドを使用して、特定の基準を満たす R のデータ フレームの最初の行を検索できます。
方法 1: 条件を満たす最初の行を検索する
#get first row where value in 'team' column is equal to 'B' df[which(df$team == ' B ', arr. ind = TRUE )[1],]
方法 2: 複数の条件を満たす最初の行を検索する
#get first row where 'points' column > 15 and 'assists' column > 10 df[which(df$points>15 & df$assists>10, arr. ind = TRUE )[1],]
方法 3: 多くの条件の 1 つを満たす最初の行を検索する
#get first row where 'points' column > 15 or 'assists' column > 10 df[which(df$points>15 | df$assists>10, arr. ind = TRUE )[1],]
次の例は、R の次のデータ フレームで各メソッドを実際に使用する方法を示しています。
#create data frame df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'C', 'C', 'C'), points=c(18, 13, 19, 14, 24, 21, 20, 28), assists=c(5, 7, 17, 9, 12, 9, 5, 12)) #view data frame df team points assists 1 to 18 5 2 to 13 7 3 A 19 17 4 B 14 9 5 B 24 12 6 C 21 9 7 C 20 5 8 C 28 12
例 1: 基準を満たす最初の行を検索します。
次の構文を使用して、チーム列の値が「B」に等しい最初の行を検索できます。
#find first row where team is equal to 'B' df[which(df$team == ' B ', arr. ind = TRUE )[1],] team points assists 4 B 14 9
チーム列の値が「B」に等しい最初の行は、データ フレームの 4 行目であることがわかります。
例 2: 複数の条件を満たす最初の行を検索する
次の構文を使用して、 points列の値が 15 より大きく、 assists列の値が 10 より大きい最初の行を検索できます。
#find first row where points > 15 and assists > 10 df[which(df$points>15 & df$assists>10, arr. ind = TRUE )[1],] team points assists 3 A 19 17
ポイント列の値が 15 より大きく、アシスト列の値が 10 より大きい最初の行は、データ フレームの 3 行目であることがわかります。
例 3: 多くの条件の 1 つを満たす最初の行を検索する
次の構文を使用して、 points列の値が 15 より大きいか、 assists列の値が 10 より大きい最初の行を検索できます。
#find first row where points > 15 or assists > 10 df[which(df$points>15 | df$assists>10, arr. ind = TRUE )[1],] team points assists 1 to 18 5
ポイント列の値が 15 より大きい、またはアシスト列の値が 10 より大きい最初の行が、データ フレームの最初の行であることがわかります。
注: &と|演算子はそれぞれ R の「and」と「or」を表します。
追加リソース
次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。