我正在将栅格转换为点以进行一些计算。栅格点的精度为0.5,当我尝试获取点矩阵内点的坐标时,R决定仅舍入Y坐标,如下面的示例所示。
rasterdir <- ".../raster1.tif"
r <- raster(rasterdir)
rp <- rasterToPoints(r)
rp1 <- rp[1, ]
> rp[1, ]
x y raster1
534001.500 4750000.500 337.334
。
rp1x <- rp[1, 1]
> rp1x
x
534001.5
。
rp1y <- rp[1, 2]
> rp1y
y
4750001
任何建议将Y保持在4750000.5?
答案 0 :(得分:0)
我仍然不知道为什么控制台中未显示该十进制,但我发现这些十进制值仍然存在:
nchar(rp [1,2])
y
9
答案 1 :(得分:0)
如果始终显示所有小数,则在控制台中读取数字将非常困难。因此,默认情况下,R不这样做
x <- 12.000005
x
#[1] 12
但是您可以通过多种方式强制显示。例如
sprintf("%.10f", x)
#[1] "12.0000050000"
或
options(digits=10)
x
#[1] 12.000005