2017-07-04 57 views
0

我有一個擴展名爲xlsx的Excel文件,其中Sheet1和Sheet包含以下內容:18:20,10:10(列A,行1:2)。當我嘗試將它們導入到R中時,我得不到預期的結果。使用XLconnect和readWorksheet導入excel xlsx數據導致格式不正確

library(XLConnect) 

setwd("...") 
my_book <- loadWorkbook("test.xlsx") 

xlsx_import <- lapply(getSheets(my_book), readWorksheet, object = my_book) 
xlsx_import 


# Returns some kind of date format 

xlsx_import <- lapply(getSheets(my_book), readWorksheet, object = my_book, colTypes = "character") 
xlsx_import 


# Same as above 

是否有可能以某種方式解決這個問題?因爲我有相當多的紙張要經過。

+0

我想這個問題是Excel認爲這些單元格是時間,所以它會以日期/時間格式導出它們。如果將它們作爲日期保存在Excel中,那麼最好的選擇是將它們導入到R中,然後嘗試提取數據,而不是通過'readWorksheet'選項進行。 –

+0

導入數據後,請嘗試如下所示:'df $ problem.column < - format(df $ problem.column,format =「%H:%M」)' –

+0

不起作用... – MLEN

回答

0
Try This. 

wb=loadWorkbook("Test.xlsx", create = TRUE) 

setStyleAction(wb, XLC$"STYLE_ACTION.DATATYPE") 
cs = createCellStyle(wb, name = "myDateStyle") 
setDataFormat(cs, format = "dd-mm-yyyy") 
setCellStyleForType(wb, style = cs, type = XLC$"DATA_TYPE.DATETIME") 



s<-readWorksheet(wb,sheet = "Sheet1") 

***Operations which you wanna do*** 

writeWorksheet(wb, wq, sheet = "Sheet1") 
setForceFormulaRecalculation(wb,"*",TRUE) 
saveWorkbook(wb) 
+0

有關其他信息這段代碼只回答可能會有好處。 – Pyves

相關問題