Kod fragmentu:W jaki sposób ifelse R działa z danymi znakowymi?
blarg = data.frame(a=c("aa", "bb", "dd"))
blarg$b = blarg$a
# blarg$b is now c("aa", "bb", "dd")
blarg$b = ifelse(blarg$a!="bb",blarg$a,"ZZZ")
# blarg$b is now c(1, "ZZZ", 3)
# I expected c("aa", "ZZZ", "dd")
# typeof(blarg$b) is "character"
Dlaczego blarg $ B C (1 "ZZZ" 3) Skąd pochodzą liczby?
R wprowadził współczynnik "blarg $ a". Możesz spróbować 'stringsAsFactors = FALSE' –
Nie mam nic przeciwko temu, żeby być czynnikiem. Jak uzyskać ten sam czynnik, aby wyjść z ifelse? – dfrankow
Możesz rzucić 'blarg $ a' na znak:' ifelse (blarg $ a! = "Bb", as.character (blarg $ a), "ZZZ") 'daje' c ("aa", "ZZZ", "dd") ' –