如何在R語言中讀取數據

    讀取數據有以下幾種方式:

    1.最常用的是採用讀取表格數據的函數 read.table()以及read.csv().。這些函數讀取一種以行列的格式存儲數據的文本文件,然後在R中返回一個數據框。

     2.readLines()用於逐行讀取文本文件,實際上可以是任何格式的文件,在R中返回一個字符向量。

     3.source()是讀取R的重要函數,如果你有R代碼例如函數或者其他東西寫成的文件,都可以用source()將其中的代碼讀入R中。

     4.dget()也可以用來讀取R代碼文件, 但它讀取的是逆句法分析過後以文本文件儲存的 R 對象 。

    5.load()和unserialize()用於把二進制對象讀入R

     寫入數據有以下幾種方式,它們與讀取數據一一對應:

       1.read.table()是最常用的讀入數據的函數,我們有必要了解它的參數是什麼以及它們的意義:

          第一個參數file,很明顯是文件或者鏈接的名稱,通常你提供的文件名都應當是字符串 ,它是你電腦上一個特定文件的路徑。

          第二個參數header是一個邏輯標誌,表明第一行是否是表頭 比如 第一行寫了所有的變量名 那麼這並不是實際數據的一部分 只是提供了標記的行 你要告訴 read.table 函數 第一行是否包含變量名 還是直接就是數據 

          第三個 參數是sep,表示分隔符 ,它是一個字符串 用於標示每一列是如何分隔的 假如你有一個文件用逗號分隔 那麼分隔符就是逗號 有的時候會碰到分隔符是冒號、製表符或者空格的文件 這時候你就要告訴 read.table 函數分隔符是什麼了

           第四個參數是colClasses ,應當是一個字符向量 其長度應當與數據集的列數相等 這個字符向量表示 數據集中每一列數據的類 這麼說吧 第一列數據是數值型的 第二列數據是邏輯型 第三列數據是因子 諸如此類 colClass 不是一個必須的向量 但它會告訴 read.table() 每一列數據的類型 。

            第五個參數是nRows,它 是數據集中數據的行數 雖然不是必須的但有時也會用到。

           第六個參數是comment.char,它 是字符串 表明文件中用於註釋的字符 默認通常是井號 所有在註釋符號後面的字符都會被忽略。

           第七個參數是skip ,它指定了從文件開頭往下忽略多少行 有的時候文件開頭可能有一些頭信息或者非數據區域 你想要跳過那些部分 所以你可以告訴 read.table 函數去跳過比如開頭的 10 行或者是 100 行 然後從那裏再開始讀取數據 

           最後一個參數是stringAsFactors,默認爲 TRUE 它的作用是 通過它可以選擇是否把字符變量編碼成因子 所以這是默認操作 每次 read.table() 遇到一列看起來像字符變量的數據 它就會假設你希望讀入的 是一個因子變量 如果你不想把這一列設成因子變量 那麼你可以把 stringAsFactors 設置爲 FALSE

           當你在使用的時候,你可以直接傳入文件名,它會自動調配好剩下的部分。

           read.table() 是等價的  除了 read.csv() 的默認分隔符是逗號 而 read.table() 的默認分隔符是空格外。 另外 read.csv() 會默認把 header 參數設置爲 TRUE

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章