当我导入 csv 文件时,R 无法将 NA 识别为缺失数据

R does not recognize NA as missing data when I am importing a csv file

在我的第一个 R 脚本中,我创建了一个大型数据集并导出为 csv 文件。

在我的第二个 R 脚本中,我通过每个 SampleID 导入来分析数据。

问题是 R 没有将 NA 识别为缺失。如何将 csv 文件导入 R 以便我的数据被识别为数字?

谢谢。

### R Script One
SampleID <- c(1,1, 2,2, 3,3, 4,4)
x1 <- runif(8) * 10
x2 <- runif(8) * 10

my_df<- as.data.frame(cbind(SampleID, x1, x2))

my_df[2,3] <- NA
my_df[5,2] <- NA

write.csv(my_df, "my_df.csv", row.names = FALSE) #write out csv file from first R script


### R Script Two
library(sqldf)

j <- 3
select <- paste0("select * from file where SampleID=",j,"")
my_df2 <- read.csv.sql("my_df.csv", select) #Import only certain records into second R script


mode(my_df2$x1)

读取csv文件后,可以使用readr::type_convert()转换列类型。

library(read)

my_df2 <- read.csv.sql("./Downloads/my_df.csv", select) %>% readr::type_convert()

mode(my_df2$x1)
[1] "numeric"