複数の条件に基づいて r でデータ フレームをサブセット化する方法


次のメソッドを使用して、R の複数の条件に基づいてデータ フレームをサブ定義できます。

方法 1: 「OR」ロジックを使用してデータ フレームをサブセットする

 df_sub <- subset(df, team == ' A ' | points < 20 )

この特定の例では、チーム列が「A」に等しい行、またはポイント列が 20 未満である行のデータ フレームをサブセット化します。

方法 2: 「AND」ロジックを使用してデータ フレームをサブセットする

 df_sub <- subset(df, team == ' A ' & points < 20 )

この特定の例では、チーム列が「A」に等しくポイント列が 20 未満である行のデータ フレームをサブセット化します。

このチュートリアルでは、次のデータ フレームを使用して各メソッドを実際に使用する方法を説明します。

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                 position=c('Guard', 'Guard', 'Forward',
                            'Guard', 'Forward', 'Forward'),
                 dots=c(22, 25, 19, 22, 12, 35))

#view data frame
df

  team position points
1 A Guard 22
2 A Guard 25
3 A Forward 19
4 B Guard 22
5 B Forward 12
6 B Forward 35

例 1: 「OR」ロジックを使用したデータ フレームのサブセット

次のコードは、チーム列が「A」に等しい行、またはポイント列が 20 未満である行のデータ フレームをサブセット化する方法を示しています。

 #subset data frame where team is 'A' or points is less than 20
df_sub <- subset(df, team == ' A ' | points < 20 )

#view subset
df_sub

  team position points
1 A Guard 22
2 A Guard 25
3 A Forward 19
5 B Forward 12

サブセット内の各行のチーム列の値が「A」であるかポイント列の値が 20 未満です。

: |記号はRの「OR」を表します。

この例では、 subset()関数に「OR」記号を 1 つだけ含めていますが、さらに多くの条件に基づいてサブセット化したいだけ含めることもできます。

例 2: 「AND」ロジックを使用したデータ フレームのサブセット

次のコードは、チーム列が「A」に等しくポイント列が 20 未満である行のデータ フレームをサブセット化する方法を示しています。

 #subset data frame where team is 'A' and points is less than 20
df_sub <- subset(df, team == ' A ' & points < 20 )

#view subset
df_sub

  team position points
3 A Forward 19

結果のサブセットには 1 行のみが含まれることに注意してください。

実際、チーム列の値が「A」でポイント列の値が 20 未満である行は 1 行だけです。

:記号&はRの「AND」を表します。

この例では、 subset()関数に「AND」記号を 1 つだけ含めていますが、さらに多くの条件に基づいてサブセット化したいだけ含めることもできます。

追加リソース

次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。

R でデータ フレーム内の単一行を選択する方法
RでNA値を持つ行を選択する方法
Rのベクトル値に基づいて行を選択する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です