2016-04-13 10 views
2

Biriniz iki nesnenin neden eşleşmediğini anlatan bir işlevi biliyor mu diye merak ediyordum. Aslında, aynı türden bir değişkenle (belediyeler) ilgilenen iki değişkeni karşılaştırmak istiyorum, maalesef bunlardan birinin diğerinden daha fazla seviyesi var.R iki faktör değişkeni aynı seviyeye sahip olmadığında neyin yanlış olduğunu kontrol etmek için fonksiyon

depext <- ifelse(EMQmetro$MUNI==EMQmetro$V08C_1, "same","diff") 

*Error in Ops.factor(EMQmetro$MUNI, EMQmetro$V08C_1) : 
    les niveaux des facteurs diffèrent* 

identical(EMQmetro$MUNI, EMQmetro$V08C_1, num.eq = TRUE, single.NA = TRUE, attrib.as.set = TRUE, 
      ignore.bytecode = TRUE, ignore.environment = FALSE) 
: Bu nedenle, dahil edildiği belediyeler bilmek istiyorum Burada

benim kodudur (ı 900 den fazla olması gibi ben teker teker bakarak tercih ediyorum) bunlardan sadece bir tanesidir

Çıktı:

*[1] FALSE* 

sütun factor sınıfıdır

cevap

0

gelecekteki Yardımlarınız için şimdiden teşekkür ederiz. == çalışması için, biz bir seviyede en az bir fark varsa FALSE olurdu character sınıfa

ifelse(as.character(EMQmetro$MUNI)==as.character(EMQmetro$V08C_1), "same","diff") 

identical dönüştürülmesi gerekir. Bazen, sorunu yaratacak bir sütunda kullanılmayan düzeyler olacaktır.

İlgili konular