我有一些數據框,其中有一些數字列是因式分解的,我需要將它們轉換爲數字。下面是一個示例:將因子轉換爲數字而忽略nas
y <- structure(list(y = structure(c(2L, NA, 3L, 1L, 4L, 2L), .Label = c(" 1,000,000.00 ", " 1,200,000.00 ", " 150,000.00 ", " 200,000.00 "), class = "factor")), .Names = "y", row.names = c(NA, -6L), class = "data.frame")
數據幀中包含NAS,所以當我嘗試因子水平轉換成數字,我得到的所有NAS的回報。這是我試過的。
y <- as.data.frame(y)
y <- as.numeric(levels(y))
y$y <- as.numeric(levels(y$y)[y$y])
而且這隻返回NA。如何將這些因子水平轉換爲數字,同時將nas保留爲na?
你會需要擺脫所有的逗號首先,如果你想使用'as.numeric',例如'gsub'。 – joran