2013-03-08 73 views
2

我有一個帶有幾張工作表的excel電子表格。的格式如下:只閱讀xls的某些專欄

Date  A  B  C  D  E  F      Reference Ref Date Half life 
03/01/13 6.29 5.28 8.15 4.93 11.67 6.4      8.88  01/01/99 30.23 
04/01/13 6.39 5.39 8.22 5.04 11.75 6.4     
07/01/13 6.34 5.32 8.17 4.92 11.82 6.4     
08/01/13 6.33 5.3 8.16 4.96 11.68 6.4     
09/01/13 6.29 5.29 8.13 4.93 11.73 6.4     
10/01/13 6.29 5.32 8.17 4.95 11.61 6.4     
11/01/13 6.21 5.27 8.12 4.95 11.57 6.4     
14/01/13 6.28 5.28 8.09 4.92 11.65 6.4     
15/01/13 6.25 5.26 8.06 4.9 11.59 6.4     
16/01/13 6.26 5.3 8.08 4.94 11.7 6.4     
17/01/13 6.27 5.27 8.09 4.96 11.57 6.4     
18/01/13 6.29 5.27 8.04 4.94 11.57 6.4     
21/01/13 6.34 5.33 8.23 4.99 11.68 6.4     
22/01/13 6.31 5.34 8.23 4.97 11.63 6.4     
23/01/13 6.24 5.26 8.03 4.93 11.58 6.4     
24/01/13 6.24 5.27 8.03 4.93 11.56 6.4     
25/01/13 6.26 5.3 8.08 4.93 11.6 6.4 

我想讀取colmuns日期和AF只成數據幀,並忽略其用於計算在J1,2,係數k1,2和L,1,2的元素一些價值。

我使用read.xls從包裝GDATA

read.xls("filename.xls", "sheetname", na.strings=c("NA","#DIV/0!"))

但是這給了我包含列的數據幀A - L.我可以重鑄這個數據幀所需的格式,但寧願選擇要讀取的列。可以使用read.xls以類似的方式執行此操作,read.table可以實現此目的(Ways to read only select columns from a file into R? (A happy medium between `read.table` and `scan`?)

+0

閱讀和子集處理工作量最少,對於較小的數據集(<200 mb csv)工作正常。 – 2013-03-08 16:45:52

回答

9

可以使用庫XLConnect讀取.xls文件。功能readWorksheet()可讓您設置需要導入的列和行。

library(XLConnect) 
wb<-loadWorkbook("wb.xls") 
data <- readWorksheet(wb, sheet = "Sheet1",startCol=1,endCol=7) 
1

另一種選擇是使用是使用Excel named rangeRODBC

channel<-odbcConnectExcel(paste(Repository,excelFile, sep = "/")) 
ConsoTab<-sqlFetch(channel,NamesRangeAF) 
odbcClose(channel) 

這裏NamesRangeAF是你的Excel命名的範圍。