A: 文字列に複数の部分文字列が含まれているかどうかを確認します。


R で次のメソッドを使用すると、文字列に複数の部分文字列が含まれているかどうかを確認できます。

方法 1: 文字列に複数の部分文字列のいずれかが含まれているかどうかを確認する

 df$contains_any <- apply(sapply(find_strings, grepl, df$team), 1 , any )

この特定の構文は、チーム列の各文字列に、 find_stringsという文字列ベクトルで指定された文字列の1 つが含まれているかどうかをチェックします。

方法 2: 文字列に複数の部分文字列が含まれているかどうかを確認する

 df$contains_any <- apply(sapply(find_strings, grepl, df$team), 1 , all )

この特定の構文は、チーム列の各文字列に、 find_stringsという文字列ベクトルで指定されたすべての文字列が含まれているかどうかをチェックします。

次の例は、R の次のデータ フレームで各メソッドを実際に使用する方法を示しています。

 #create data frame
df = data. frame (team=c('Good East Team', 'Good West Team', 'Great East Team',
                       'Great West Team', 'Bad East Team', 'Bad West Team'),
                points=c(93, 99, 105, 110, 85, 88))

#view data frame
df

             team points
1 Good East Team 93
2 Good West Team 99
3 Great East Team 105
4 Great West Team 110
5 Bad East Team 85
6 Bad West Team 88

1:文字列に複数の部分文字列のいずれかが含まれているかどうかを確認する

次の構文を使用して、チーム列の各文字列に「Good」または「Is」の部分文字列が含まれているかどうかを確認できます。

 #define substrings to look for
find_strings <- c(' Good ', ' East ')

#check if each string in team column contains either substring
df$good_or_east <- apply(sapply(find_strings, grepl, df$team), 1 , any )

#view updated data frame
df

             team points good_or_east
1 Good East Team 93 TRUE
2 Good West Team 99 TRUE
3 Great East Team 105 TRUE
4 Great West Team 110 FALSE
5 Bad East Team 85 TRUE
6 Bad West Team 88 FALSE

新しいgood_or_east列は次の値を返します。

  • チームに「Good」または「Is」が含まれている場合はTRUE
  • チームに「Good」も「East」も含まれていない場合はFALSE

例 2 :文字列に複数の部分文字列が含まれているかどうかを確認する

次の構文を使用して、チーム列の各文字列に部分文字列「Good」「Is」が含まれているかどうかを確認できます。

 #define substrings to look for
find_strings <- c(' Good ', ' East ')

#check if each string in team column contains either substring
df$good_and_east <- apply(sapply(find_strings, grepl, df$team), 1 , all )

#view updated data frame
df

             team points good_and_east
1 Good East Team 93 TRUE
2 Good West Team 99 FALSE
3 Great East Team 105 FALSE
4 Great West Team 110 FALSE
5 Bad East Team 85 FALSE
6 Bad West Team 88 FALSE

新しい列good_and_east は次の値を返します。

  • チームに「Good」と「Is」が含まれる場合はTRUE
  • チームに「Good」と「Is」が含まれていない場合はFALSE

「Good」部分文字列「East」部分文字列を含むチーム名は 1 つだけであるため、 TRUE値が 1 つだけ返されることに注意してください。

追加リソース

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

A: 文字が文字列内にあるかどうかを確認する方法
A: 文字列からスペースを削除する方法
A: 特定の文字間の文字列を抽出する方法

コメントを追加する

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