R中的数据验证
我想验证.csv的标题和正文 您可以找到更具说明性的图像: 我想验证一个带有标题的表,标题中包含以下参数:COL1=PERSONA、COL2=EDAD、COL3=SEXO、COL4=TRABAJO、COL5=multipador,并使用列中的下一个值验证主体: COL1=VARCHAR,COL2=NUMERICAL,COL3=H或M(组成列的值可以是H或M),COL4=VARCHAR,COL5=1(所有值都必须是1) 我想在R中对.csv存档进行收费,并用代码验证.csv,最后,如果.csv的值正确,R会给我一个TRUE;如果值错误,R会给我一个FALSE。我需要R验证文件的头和正文 我怎么做R中的数据验证,r,R,我想验证.csv的标题和正文 您可以找到更具说明性的图像: 我想验证一个带有标题的表,标题中包含以下参数:COL1=PERSONA、COL2=EDAD、COL3=SEXO、COL4=TRABAJO、COL5=multipador,并使用列中的下一个值验证主体: COL1=VARCHAR,COL2=NUMERICAL,COL3=H或M(组成列的值可以是H或M),COL4=VARCHAR,COL5=1(所有值都必须是1) 我想在R中对.csv存档进行收费,并用代码验证.csv,最后,如果.csv的值
感谢并致以亲切的问候,假设您已将文件加载到
数据中
我将实现此功能:
good.csv <- function(x){
# We start asuming that everything is correct
res <- T
# Evaluate colnames
if (sum(colnames(x)==c("PERSONA", "EDAD", "SEXO", "TRABAJO", "MULTIPLICADOR"))!=5){res <- F
}
if(!(class(x$PERSONA)%in%c("character","factor"))){res <- F}
if(is.numeric(x$EDAD)==F){res <- F}
if(!(levels(x$SEXO)%in%c("H","M"))){res <- F}
if(!(class(x$TRABAJO)%in%c("character","factor"))){res <- F}
if((x$MULTIPLICADOR)!=rep(1,nrow(x))){res <- F}
# Return res value
return(res)
}
good.csv您的意思是,您想加载表,看看每个变量的类是否符合您对类型和可能值的要求?是的,这就是问题所在。