2017-06-09 3 views
0

kann ich wissen, wie man zwei Zeichenkettenvariablen mit verschiedenen Ebenen in R vergleicht?R: Zeichenkettenvariablen mit verschiedenen Ebenen vergleichen

ich möchte, ist zu prüfen, ob die Variable Q1 mit in Q2 ist passend, so dass ich in später einige Validierung auf meine Daten tun können, auf

Key Q1  Q2    
1 Apple Pineapple  
2 Banana Banana    
3 Apple Papaya    
4 Orange ""      
5 Papaya ""     
6 Apple Apple   

und haben Ergebnis wie unten

Key Q1  Q2   Result   
1 Apple Pineapple No 
2 Banana Banana  Yes   
3 Apple Papaya  No    
4 Orange ""   No      
5 Papaya ""   No    
6 Apple Apple  Yes   

ich habe eine Fehlermeldung angegeben, dass

"level sets of factors are different" 


$ Q1 : Factor w/ 4 levels "Apple","Banana",..: 1 2... 
$ Q2 : Factor w/ 5 levels "","Pineapple","Banana"... 

Kann mir jemand dabei helfen?

Vielen Dank.

+0

zum Charakter konvertieren und versuchen Sie es erneut – Sotos

+1

@Sotos Vielen Dank. Es ist so einfach, aber ich kann nicht darüber nachdenken. Haha – CHONG

Antwort

0

Try this:

Q1 = c("Apple", "Banana", "Apple", "Orange", "Papaya", "Apple") 
Q2 = c("Pineapple", "Banana", "Papaya", "", "", "Apple") 

df = as.data.frame(cbind(Q1, Q2)) 
df$Q1 = as.character(df$Q1) 
df$Q2 = as.character(df$Q2) 

df$Results = ifelse(df$Q1 == df$Q2, "Yes", "No") 
df 

> df 
     Q1  Q2 Results 
1 Apple Pineapple  No 
2 Banana Banana  Yes 
3 Apple Papaya  No 
4 Orange    No 
5 Papaya    No 
6 Apple  Apple  Yes 
+0

Danke. Ich werde es versuchen – CHONG

Verwandte Themen