2016-07-19 8 views
0

Ich habe Daten strukturiert wie unten gezeigt. Ich möchte zwei Variablen erstellen, die die Anzahl der Variablen zählen, die Zeichenfolgen enthalten, die eine von mehreren Bedingungen erfüllen. Zum Beispiel wäre df $ negativ die Zeilensumme von Kundenvariablen, die die Zeichenfolgenmuster c ("Nein", "Did Not") und df $ positiv enthalten, die Zeilensumme von Kundenvariablen, die mindestens eines der Zeichenfolgenmuster c enthalten ("Rent", "Selected")R - Summe Zeilen in Daten Ruhm mit Zeichenfolge Muster, die eines der mehreren Kriterien erfüllen

   Customer 3    Customer 4    Customer 5 
1     <NA> Showed - Did not select     No fit 
2  Showed - Selected      <NA>     <NA> 
3     <NA>     Rented     <NA> 
4     <NA>      <NA>     No fit 

so df $ negativ und df $ positiv für Zeile 1 wäre 2 bzw. 0.

Vielen Dank im Voraus!

Antwort

0

Sie können versuchen,

rowSums(sapply(df, function(i) grepl(tolower('No|Did Not'), tolower(i)))) 
#[1] 2 0 0 1 

#and similarly for positive 

rowSums(sapply(df, function(i) grepl(tolower('Rent|Selected'), tolower(i)))) 
#[1] 0 1 1 0 
+0

funktioniert perfekt! Ich danke dir sehr – kcturner

Verwandte Themen