R語言讀取xls與xlsx格式文件過程
在數據分析的過程中,第一步就是讀取數據。
通常我們遇到的數據是csv格式或者txt格式的數據,這時我們使用系統自帶的read.csv()
與read.table()
就可對這些格式的數據進行讀取,隻是讀取時需註意編碼格式。對於大型csv格式的數據(當然小數據也可以),可以使用data.table
包中的fread()
進行讀取可以極大地提升讀取速度。
但當遇到瞭Excel表生成的文件,讀取起來相對就沒有那麼友好。之前的做法是簡單粗暴地直接將我們的xls或xlsx文件利用Excel轉化為csv文件後再進行讀取,亦或者直接就用Python使用pandas庫進行處理,然後就在Python中進行分析。
就是由於之前幾次碰壁,使用網上推薦的一些包來進行讀取,但都以失敗告終。不過這次還是決定解決這個“頑疾”,對xls與xlsx這兩種文件用R進行讀取。
這幾種方法主要參考:Read Excel files from R
1. ROOBC
這個包中有函數可以讀取xlsx
格式的文件,但對於現在的我們而言,絕大多數人的電腦都不能使用這個包,因為其隻能用於32位系統的Windows,所以這裡不對這個包進行贅述。
2. xlsReadWrite
隻能從GitHub中獲得,CRAN上還沒有,也不進行過多的贅述。
3. XLConnect
要依賴java,並且對於大數據情況讀取非常慢。但實際上自己使用的時候,安裝瞭java後,還是沒法使用這個包。可能是某些步驟設置出現瞭問題。
若有童鞋對前面的三個包非常感興趣,其詳細的用法可以參考前面的參考網址。
4. xlsx
這個包是目前用的最多,也是R中可以說最好用的讀取Excel文件的利器。
下面專門對其進行介紹。首先我們先說明這個包的依賴文件,不僅僅隻是依賴R中的一些包,而是需要單獨安裝java。
1)裝Java
安裝鏈接:https://www.java.com/zh_CN/download/
我們按照指引選擇默認路徑安裝,安裝完成後,在C:\Program Files
下出現瞭Java文件,說明安裝成功。(註:有些地方說需要將Java文件添加到全局變量中,後面的xlsx
包才能調取成功,但其實在這兩天的實際安裝中發現,自己的電腦並不需要,可能得看臉。)
2)裝xlsx
安裝xlsx
其實沒什麼好說的,就正常安裝,然後它會自動將所需要的rjava
等依賴庫,最後成功安裝xlsx
庫。
3)實際使用
最後我們就能直接使用啦,下面來講一下其代碼格式:
library(xlsx) dat <- read.xlsx("data.xlsx", sheetName = "Sheet1", encoding = 'UTF-8')
一個標準的數據讀取如上所示,下面將幾個常用的參數:
"data.xlsx"
:表示讀取數據的名稱。
sheetName
:表示讀取表中表的名稱,通常第一個就是Sheet1
。
encoding
:這個在讀取中文數據的時候是一定要加上的,不然讀取數據會出現亂碼。
sheetIndex
:表示讀取文件中第幾個表,sheetIndex = 1
表示讀取文件中第一個表。
需要特別註意:當文件中我們的表明為中文字時,不能使用類似sheetName = “表1″進行讀取,即使加上encoding = 'UTF-8'
也會出現讀取錯誤,這時就需要使用sheetIndex
來進行讀取。
以上就是R語言讀取xls與xlsx格式文件過程的詳細內容,更多關於R讀取文件的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- R語言對Excel文件操作實例
- R語言文本文件讀寫(txt/csv/xlsx)
- 如何利用JavaScript讀取excel文件並繪制echarts圖形
- Python對Excel進行處理的實操指南
- python之openpyxl模塊的安裝和基本用法(excel管理)