[問題] as.interger轉換問題

看板R_Language作者 (摩德男孩)時間6年前 (2019/04/02 14:35), 編輯推噓0(008)
留言8則, 3人參與, 6年前最新討論串1/1
[問題類型]:資料行轉換問題 [軟體熟悉度]: R使用一年以上 [問題] 假設當我有一串factor向量叫x >x 1001001010 levels:0,1 但我將它轉換為as.interger(x) 卻會變成 2112112121 不理解為何轉換為整數後都會自動+1,是因為0不是整數嗎,但0是整數阿 苦惱中 [環境敘述]: 3.4.4 -- 推 maxxV3:說真的 有人總統想選一個女人家嗎 = = 04/19 21:48 → teremy:韓國總統都是女的了。韓國還不夠大男人嗎? 04/19 21:49 噓 miler22020:樓上是遠古時帶來的嗎 04/19 21:49 → miler22020:樓樓上 04/19 21:49 推 Top5566:樓樓樓上 04/19 21:50 → miler22020:樓樓樓樓 幹 算了 04/19 21:50 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.34.112.167 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1554186930.A.905.html

04/02 14:36, 6年前 , 1F
as.numeric(as.character))
04/02 14:36, 1F

04/02 14:37, 6年前 , 2F
或是你自己減1
04/02 14:37, 2F

04/02 17:00, 6年前 , 3F
不是加一,那是因子的順序,例如你輸入
04/02 17:00, 3F

04/02 17:01, 6年前 , 4F
as.numeric(factor(c("B","A","C","B")))
04/02 17:01, 4F

04/02 17:02, 6年前 , 5F
因為因子順序是:A,B,C ;所以結果會呈現2132
04/02 17:02, 5F

04/02 17:37, 6年前 , 6F
as.interger(as.character(x)) 降就會是正確數字了
04/02 17:37, 6F

04/02 17:38, 6年前 , 7F
至於原因樓上解釋了
04/02 17:38, 7F

04/02 17:39, 6年前 , 8F
更正 as.integer拼錯
04/02 17:39, 8F
文章代碼(AID): #1SemAoa5 (R_Language)
文章代碼(AID): #1SemAoa5 (R_Language)