0

次のようなデータがあるとします。

data <- as.list(c("Cb-a.csv", "Cc-a.csv", "Cd-a.csv", "Ca-e.csv"))

ここで、C は定数部分で、実際の文字は文字と 2 つの数字のパターンです。用途によってやりたいことが違う

お気に入り:

for (n in 1:length(data)){
 if ( data[[n]] == <condition> ){
  cat("Do this with 'Cb-a.csv', 'Cc-a.csv', 'Cd-a.csv'\n")}
  else{
   cat("Do this with 'Ca-e.csv'\n")}
}

どれが私のもの<condition>ですか?データ入力の順序またはパターンを区別する必要があります。(「Ca-e.csv」と「Ce-a.csv」の違いを読む)。

何らかの方法でデータを再作成する必要がありますが、「正しいパターン」で適合するかどうかを確認します。(ただし、手動ではありません)

最初は grep 条件を考えていましたが、この場合は、どのパターンがデータに含まれているかを取得するだけです。

4

1 に答える 1

0

greplブール値ベクトルを返します。

if ( grepl("^C.-a.csv$", data[[n]]) ) {
  cat("Do this\n")
} else {
  cat("Do that\n")
}

正確な正規表現は、一致させたい実際のパターンによって異なります。

于 2013-10-29T17:04:55.767 に答える