一、Txt文件
1. 文件中的内容有双引号,空值的时候是一对双引号
filename.txt 文件内容形如:
"ID" "ITEM"
"1080254842" "汉字"
"1080254842" "中文"
"1080594798" ""
"1080594798" ""
导入数据:
test <-read.table("filename.txt",header=TRUE)
空值部分并不是NA,R语言不会把他识别为NA,改为下面的语句,即可解决。
test <-read.table("filename.txt",header=TRUE,na.strings = "")
2. 文件中内容无双引号,空值即直接空白,形如下面:
ID ITEM
1080254842 汉字
1080254842 中文
1080594798
1080594798
导入数据:
test <-read.table("filename.txt",header=TRUE)
会出现错误:Error in scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings, :3行没有2元素
第三行第二元素没有。
修改为如下即可:
test <-read.table("filename.txt",header=TRUE,fill=TRUE)
导入数据成功,但是,空值仍然不是NA,还需加上na.strings = "",
test <-read.table("filename.txt",header=TRUE, fill=TRUE, na.strings = "")
成功导入。
二、csv文件
test <-read.csv("test.csv",header=TRUE,sep=",",na.strings = "")
其中:
- header =TRUE,表示把第一行作为标题。
- sep=",",因为csv文件的列是用逗号分开的,加上sep=",",帮助R通过识别逗号来分割列。如果没加,会出现原本多列数据导入后变为一列的情况。
- na.strings = "":处理缺失值问题。