[問題] R vector的mode問題

看板R_Language作者時間6年前 (2018/11/03 07:57), 6年前編輯推噓3(304)
留言7則, 3人參與, 6年前最新討論串1/1
[問題類型]: 意見調查(我對R 有個很棒的想法,想問問大家的意見) [軟體熟悉度]: 入門(寫過其他程式,只是對語法不熟悉) [問題敘述]: 請簡略描述你所要做的事情,或是這個程式的目的 大家好 想請益R的atomic vector的mode問題 例如以下題目 我的理解是 假設x是一個包含1到10的vector 加了一個character element 整個vector就會變成character 但如果加入TRUE FALSE FALSE vector中就把logical indexing改為 1 0 0 這部分我就不知道是用到fundemental principle operation的什麼原則了 學長姐給了解答是 the mode which preserves the most information would be used. 想問問大家最後一步要如何解釋 謝謝~~ [程式範例]: x <-1:10 x3 <-c(x, "Yankees") # error or run? x3 <-run without an error x4 <-as.numeric(x3) # a warning x4 x5 <-c(x, TRUE, FALSE, FALSE) x5 # what happened? 我是回答x5這一步做logical indexing, 因為x為numeric vector 所以TRUE FALSE轉為 1,0 請教大家是否有更嚴謹的說法? 謝謝了 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 129.21.68.185 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1541203041.A.27E.html ※ 編輯: AmigoSafin (129.21.68.185), 11/03/2018 07:58:08

11/03 09:10, 6年前 , 1F
因為 vector 的資料型態要一致 所以資料型態強弱順序:c
11/03 09:10, 1F

11/03 09:10, 6年前 , 2F
haracter > complex > numeric > integer > logical
11/03 09:10, 2F

11/03 09:12, 6年前 , 3F
所以同時有 T F 以及 numeric 的話 全部都會變成 numeri
11/03 09:12, 3F

11/03 09:12, 6年前 , 4F
c
11/03 09:12, 4F

11/03 13:13, 6年前 , 5F
資料型態之所以有強弱就是為了上述說的"保留最多資訊"~這樣
11/03 13:13, 5F

11/03 13:13, 6年前 , 6F
不同型態之間轉換才有彈性
11/03 13:13, 6F

11/04 02:13, 6年前 , 7F
謝謝各位高手!
11/04 02:13, 7F
文章代碼(AID): #1RtEHX9- (R_Language)
文章代碼(AID): #1RtEHX9- (R_Language)