匹配中的NA值(R)

时间:2014-10-07 11:20:06

标签: r matching na

我试图在termen_na_sound中找到soundexcodes[,2]的位置。我试过这个如下:

termen_na_sound_pos <- match(termen_na_sound, as.character(soundexcodes[,2]))

但每次都会返回几个NA值。虽然我手动控制它并且有匹配!这可能是什么问题?

我也试过了pmatchcharmatch,但这也是同样的问题。

as.character(soundexcodes[188:300,2])   
 [1] "accounted"        "accountid"        "accounting"       "accyn"            "achternaam"       "aciditeit"        "acirca"           "ackn"             "acnartno"        
 [10] "acnt"             "acompte"          "acount"           "acrartnu"         "acrpraku"         "acrstapw"         "acstaror"         "act"              "actie"           
 [19] "actiecode"        "actiedatum"       "actief"           "actiekorting"     "actielijst"       "actielijstcode"   "actielijstdatum"  "actielijststap"   "actiereden"      
 [28] "actiestock"       "actieve"          "action"           "actiondttm"       "actionname"       "actions"          "activated"        "activatie"        "activatiecode"   
 [37] "activation"       "active"           "activite"         "activiteit"       "activiteiten"     "activity"         "actn"             "actor"            "actual"          
 [46] "add"              "added"            "adden"            "addition"         "addr"             "address"          "address1"         "address2"         "addressee"       
 [55] "adf"              "adh"              "admi"             "admin"            "admininstratie"   "adr"              "adres"            "adres1"           "adres2"          
 [64] "adreslijn2"       "adreslijn3"       "adresse"          "adressen"         "adresverwerking"  "adresvolledig"    "aeid"             "afadatm"          "afadatp"         
 [73] "afafilnr"         "afakdimp"         "afaktie"          "afartnum"         "afasrtak"         "afastock"         "afchecker"        "afco"             "afd"             
 [82] "afdeling"         "afdelingnaam"     "afdelingnr"       "afdelingschef"    "afdkdafd"         "afdr"             "afdronk"          "afep"             "aff"             
 [91] "affc"             "affcd"            "afgecheckt"       "afgehaald"        "afgehouden"       "afgekeurd"        "afgekorte"        "afgerond"         "afgesl"          
[100] "afgesloten"       "afgevoerd"        "afgewerkt"        "afh"              "afhaalcode"       "afhaaldatum"      "afhaalpremie"     "afhaalptn"        "afhaalpuntnr"    
[109] "afhalen"          "afhaling"         "afhankelijkheden" "afhko"            "afhlpr"         
  

termen_na_sound_nieuw [100:200]
   [1]“记帐”“会计”“accyn”“achternaam”“acirca”“acrartnu”“acrpraku”“acrstapw”“acstaror”
       [10]“actie”“actiecode”“actief”“actielijstcode”“actielijstdatum”“actielijststap”“actiereden”“actiestock”“action”
   [19]“activatiecode”“activite”“activiteit”“actual”“address”“adf”“admi”“admin”“adreslijn2”
   [28]“adressen”“afdeling”“afdelingnaam”“afdelingschef”“afdkdafd”“affcd”“afgecheckt”“afgehaald”“afgerond”
   [37]“afgesl”“afgesloten”“afgewerkt”“afhaalpremie”“afhaalpuntnr”“afhalen”“afhaling”“afhlpr。” “afkorting”
   [46]“aflading”“afmeting”“afpuntdatum”“afpuntnr”“afronding”“afsluitdatum”“afsluiten”“afsluiter”“afsluiting”
   [55]“afspr”“afstand”“之后”“afval”“afw”“afw.ibo”“afwerker”“afwezigheden”“afwezigheid”
   [64]“afwezigheidscode”“afwezigheidsklasse”“afwijkend”“afwijziging”“afwijzing”“afwijzingsdatum”“afwklasse”“afzetten”“ag's”
   [73]“agence”“agf”“aggregatie”“aghist”“agobegda”“agonkopr”“akacts1”“akfartnr”“akffilnr”
   [82]“akffkdat”“akfiartr”“akfstock”“aktfiars”“aktiekorting”“alartikr”“alcohol”“alcoholsterkte”“alfacode”
   [91]“alg”“algemeen”“algval”“all”“allin”“assigned”“allowed”“altijd”“alvo”
  [100]“金额”“分析”

2 个答案:

答案 0 :(得分:0)

试试这个:

match=c()    
for (i in length(termen_na_sound)){
        match<- which(grepl(termen_na_sound[i], as.character(soundexcodes[,2])))}

答案 1 :(得分:0)

怎么样

termen_na_sound_pos <- which(grepl('terman_na_sound',as.character(soundexcodes[,2]))) 

grepl返回逻辑TRUE / FALSE,which提供指数TRUE

使用match的缺点不仅在于它会返回NA,而且它不会完成整个向量。