字符串和数字的后续csv导入

时间:2015-11-14 10:20:34

标签: r csv numeric

我有一个包含以下数据的CSV文件(“Alles.csv”)

DraftFore;DraftAft;HeadGyro;HeadMagnetic;WindDirection;WindSpeed;WaveDirection;RollHeight;Roll degree;Pitchdegree;Bearing;Distance;Current Speed
10.15;11.36;76.00;81.00;60.00;11.00;124.00;0.20;1.50;0.70;56.00;4.50;
10.17;11.39;83.00;87.00;80.00;16.00;112.00;1.10;1.60;0.60;45.00;3.90;
10.20;11.42;82.00;87.00;66.00;18.00;134.00;1.30;1.60;0.60;48.00;3.60;
10.24;11.43;60.00;65.00;30.00;18.00;143.00;1.40;1.70;0.80;20.00;4.50;
etc

当我通过以下方式导入时:

dat3 = read.csv(file="Alles3.csv", header = TRUE,sep=";",  stringsAsFactors=FALSE,na.strings=c("NA", ""))

并为DraftFore打印一个值,您会看到:

dat3[1,2]
[1] "10.15"

当我为HeadMagnetic做同样的事情时

> dat3[1,4]
[1] 81

因此,[1,2]是一个字符串,[1,4]是一个数值。

请问这怎么可能?

1 个答案:

答案 0 :(得分:0)

正如MikeRSpencer所怀疑的那样,我的CSV文件中存在虚假值。

终于找到了如何使用以下方法轻松检查:

head(dat3$DraftAft[is.na(as.numeric(dat3$DraftAft))])