[問題] read csv 不想更動header ?

看板R_Language作者時間9年前 (2015/04/21 18:39), 9年前編輯推噓1(108)
留言9則, 4人參與, 最新討論串1/1
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 請把以下不需要的部份刪除 入門(寫過其他程式,只是對語法不熟悉) [問題敘述]: 請簡略描述你所要做的事情,或是這個程式的目的 read.csv時,如果檔案中的header是數字開頭,R會自動給個英文開頭 請問如何取消這個動作? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.137.56 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1429612753.A.D00.html

04/21 18:42, , 1F
阿, check.names=F就可以取消 不過好像不太好?
04/21 18:42, 1F

04/21 19:06, , 2F
是不太好,但如果要呼叫該欄資料要像 df$"1" 之類的。
04/21 19:06, 2F
對阿 請問我在 eval(parse(text=paste("df$",input$y,sep="") 的時候要怎麼做到df$"1"這個動作? input$y就是那個欄位名稱 我用eval(parse(text=paste("cova$",toString(input$y),sep="")))好像不行

04/21 19:06, , 3F
小心這點例外就可以了。
04/21 19:06, 3F

04/21 19:07, , 4F
另外,check.names還會做其它檢查的動作,所以取消它並
04/21 19:07, 4F

04/21 19:07, , 5F
不是很好,要小心一些。
04/21 19:07, 5F

04/21 19:24, , 6F
直覺有被丟入運算風險~
04/21 19:24, 6F
原來如此 那請問有其他方法可以做到嗎? 像上面那樣加上""也是怪麻煩的 目前只有想到判斷純數字變數就補個英文給他 或是硬轉型態成CHAR? ※ 編輯: EricTao (140.112.137.56), 04/21/2015 22:53:11

04/21 23:41, , 7F
以 \" 跳脫。
04/21 23:41, 7F
是這樣的意思嗎? eval(parse(text=paste("df$\"",input$y,"\"",sep=""))) 不能確定對不對,因為現在問題更大了XD http://i.imgur.com/ouDHCyl.jpg
由圖中的紅圈圈可知 1. 輸入的變數並不總是純數字不能固定加上"",還是要判斷 2. formula裡面的變數名稱沒有加上"",這樣也是不合法的對吧? 雖然也可以把它加上.. 綜合看來,還是避免用數字開頭比較好吧 又白兜一圈了XD ※ 編輯: EricTao (140.112.137.56), 04/22/2015 15:44:57

04/22 20:09, , 8F
這裡的跳脫字元可能是 ` 而不是 \
04/22 20:09, 8F

04/22 21:15, , 9F
我之前沒驗證escape chr,不好意思。
04/22 21:15, 9F
文章代碼(AID): #1LDYZHq0 (R_Language)