【发布时间】:2017-09-29 16:41:56
【问题描述】:
我有一列坐标,我将其与strsplit() 分开,并从gsub() 中删除不需要的字符。请注意,共有 3034 行。
> head(bike_parking$Geom)
[1] "(37.7606289177, -122.410647009)" "(37.752476948, -122.410625009)"
[3] "(37.7871729481, -122.402401009)" "(37.7776039475, -122.422764009)"
[5] "(37.7658325695, -122.46649784)" "(37.7693399479, -122.432820008)"
> length(bike_parking$Geom)
[1] 3034
> sum(is.na(bike_parking$Geom))
[1] 0
由于某种原因,在我运行之后
dat <- data.frame(do.call(rbind, strsplit(as.vector(gsub("[()]", "", bike_parking$Geom)), split = ",")))
我只剩下 3033。这是怎么发生的,我应该采取什么步骤来找出问题所在?
> head(dat)
X1 X2
1 37.7606289177 -122.410647009
2 37.752476948 -122.410625009
3 37.7871729481 -122.402401009
4 37.7776039475 -122.422764009
5 37.7658325695 -122.46649784
6 37.7693399479 -122.432820008
> nrow(dat)
[1] 3033
【问题讨论】:
-
我很确定这不是问题,但可能是一个元素不包含逗号
,? -
也许可以,但我如何检查它以及它发生在哪里?
-
使用
grep(",", bike_parking$geom) -
产生:
grep(",", bike_parking$geom) integer(0) -
$Geom或$geom?grep(",", bike_parking$Geom, invert=TRUE)返回什么?