作者EricTao ()
看板R_Language
標題[問題] read csv 不想更動header ?
時間Tue Apr 21 18:39:11 2015
[問題類型]:
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
[軟體熟悉度]:
請把以下不需要的部份刪除
入門(寫過其他程式,只是對語法不熟悉)
[問題敘述]:
請簡略描述你所要做的事情,或是這個程式的目的
read.csv時,如果檔案中的header是數字開頭,R會自動給個英文開頭
請問如何取消這個動作?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.137.56
※ 文章網址: https://webptt.com/m.aspx?n=bbs/R_Language/M.1429612753.A.D00.html
1F:→ EricTao: 阿, check.names=F就可以取消 不過好像不太好? 04/21 18:42
2F:→ andrew43: 是不太好,但如果要呼叫該欄資料要像 df$"1" 之類的。 04/21 19:06
對阿
請問我在
eval(parse(text=paste("df$",input$y,sep="")
的時候要怎麼做到df$"1"這個動作? input$y就是那個欄位名稱
我用
eval(parse(text=paste("cova$",toString(input$y),sep="")))好像不行
3F:→ andrew43: 小心這點例外就可以了。 04/21 19:06
4F:→ andrew43: 另外,check.names還會做其它檢查的動作,所以取消它並 04/21 19:07
5F:→ andrew43: 不是很好,要小心一些。 04/21 19:07
6F:→ psinqoo: 直覺有被丟入運算風險~ 04/21 19:24
原來如此 那請問有其他方法可以做到嗎? 像上面那樣加上""也是怪麻煩的
目前只有想到判斷純數字變數就補個英文給他 或是硬轉型態成CHAR?
※ 編輯: EricTao (140.112.137.56), 04/21/2015 22:53:11
7F:推 andrew43: 以 \" 跳脫。 04/21 23:41
是這樣的意思嗎?
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
8F:→ Wush978: 這裡的跳脫字元可能是 ` 而不是 \ 04/22 20:09
9F:→ andrew43: 我之前沒驗證escape chr,不好意思。 04/22 21:15