2015-07-28 52 views
0

我想讀取一個xlsx文件,其中整列包含「NA」,但我想R將它解釋爲NA而不是字符「NA」。 我使用這行代碼:R閱讀xlsx,NA不作爲字符

assignments <- read.xlsx(file="assignments.xlsx", sheetIndex=2, header=T, stringsAsFactors=FALSE) 

在此先感謝

+0

試試'na.strings =「NA」'。 – SabDeM

+0

我試過了,但它不起作用 – Ruggero

+0

在這一點上,也許你可以像字符串一樣讀取數據,然後用'class(data $ column)< - as.numeric(as.character(data $ column) )' – SabDeM

回答

1

以下爲我工作

data <- read.xlsx(file = "test.xlsx", header = TRUE) 
data[data == "NA"] <- NA 
0

我有read.xlsx功能上沒有經驗,這文件的基礎上,似乎不接受read.table中允許的na.strings選項。因此,我會做什麼是導出XLSX文件爲.csv,然後用na.strings選項,如

assignments <- read.table(file="assignments.csv", header=TRUE, stringsAsFactors=FALSE, na.strings = "NA",sep=",") 

在九月選項應該是什麼在導出的文件分隔符恰好是。

當然,另一個選擇就是在之後將「NA」字符串轉換爲NA值,正如Adrian在他的回答中所建議的那樣。

+0

我已經在30分鐘前提出了'na.strings'的方式,但是OP試過並且說它沒有工作。 – SabDeM