R數據導入導出(一): read.table()和read.csv()的區別


之前也參考過一些資料,雖然是這么簡單的兩個buildin,還是仔細對比了一下,我有兩張txt,都是從cube中導出的,就意味着每一列的列數是不一樣的。R語言官方文檔中有這樣一句話不知道大家注意到了沒有:

意思是說,R語言對於導入的格式要求非常嚴格,可以說是不靈活的;簡而言之就是更希望的是格式在外部編輯好再導入。

那上面的需求能否做到,我們發現不管是逗號格式還是空格格式,都可以成為read.table()和read.csv()的數據源,那么區別就在於列數不對等這個需求了,對於read.table()嚴格要求所有列都對等,而read.csv()並不要求,后者會按最大列,或指定的列數填充,空串可指定相應的字符或數字填充。

這里不得不提到一個skip參數,例如例子中的skip=1,如果從第二行開始列數完全對齊,是可以導入成功的。

上例中的read.table(...)改為read.csv(...)可成功導入數據。

*注:

  1. 如果有數值,則最好按需設定格式
  2. 返回都是data.frame mode

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM