我有一个带有许多缺失值的.csv数据集,我希望当我读取表时,R以同样的方式识别它们(“正确”方式)。我一直在使用:
import = read.csv("/Users/dataset.csv",
header =T, na.strings=c(""))
这个脚本用一些东西填充所有空单元格,但它不一致。当我使用head(import)
查看数据时,一些丢失的单元格会被<NA>
填充,而一些丢失的单元格会被NA
填充。我担心R在开始分析数据集时会采用不同的方式来识别缺失值,因此我希望将导入统一读入缺失值。
最后,我的csv文件中的一些缺失值仅用句点表示。我还希望在导入到R时使用正确的缺失值表示法表示这些句点。
答案 0 :(得分:16)
<NA>
vs NA
只是意味着您的某些列是字符,有些是数字,这就是全部。绝对没有错。
如上所述,如果csv中的某些缺失值由单个句点.
表示,那么您可以指定一个值的向量,该值应该被视为NA
s :
na.strings=c("",".","NA")
作为read.csv
的参数。
答案 1 :(得分:0)
是的,我遇到了同样的问题。当我执行时:
rm(list=ls())
getwd()
setwd("C:/Users/JOSEP/Documents/UNI/Estadística Nitrats/Estadistica/Nitrats")
Nitrats_bo<- read.csv2("C:/Users/JOSEP/Documents/UNI/Estadística Nitrats/Dades/Nitrats Osona. Mireia.ActualitzatMunicipis_2016.csv", header=T)
head(Nitrats_bo)
使得:
X2005 X2006 X2007 X2008 X2009 X2010 X2011 X2012 X2013 X2014 X2015 X2016
1 0.4 0.2 0,6 0,7 0,6 0,9 1 0.7 1.3 0.9 1
2 0.4 0.8 NR NR 0,7 0,8 0,9 1.1 1.1 0.9 NA
3 NA NA NA NA NA NA
4 NA NA NA NA NA NA
5 NA NA NA NA NA NA
6 NA NA NA NA NA NA
因为存在“NR”因素。
所以,我抛出这个“NR”因素,当我执行......
X2005 X2006 X2007 X2008 X2009 X2010 X2011 X2012 X2013 X2014 X2015 X2016
1 0.4 0.2 0.6 0.7 NA 0.6 0.9 1.0 0.7 1.3 0.9 1
2 0.4 0.8 NA NA NA 0.7 0.8 0.9 1.1 1.1 0.9 NA
3 NA NA NA NA NA NA NA NA NA NA NA NA
4 NA NA NA NA NA NA NA NA NA NA NA NA
5 NA NA NA NA NA NA NA NA NA NA NA NA
6 NA NA NA NA NA NA NA NA NA NA NA NA
没关系!
我问但是如何在同一个df列中组合数字和因子。
三江源!
答案 2 :(得分:0)
您还可以使用更灵活的readr
软件包,其等效函数和参数为read_csv()
和na
。
library(readr)
read_csv("file.csv", na = c(".", ".."))