删除零并记录y轴,空间点数据框为x轴

时间:2018-01-03 15:34:17

标签: r logging linear-regression spatial

我想要绘制两个变量。一个是Abundance(y轴),另一个是Northing。我创建了一个空间点数据框,将Northing转换为纬度(x轴)。

通常这对我来说很好,但是,我想从中删除零并记录我的Abundance变量(y轴)。如果没有出现类似"变量长度不同的错误"?

,我怎么能这样做呢?
plot(SP_df$Latitude, df$Abundance)

abline(lm(df$Abundance ~ SP_df$Latitude))

1 个答案:

答案 0 :(得分:0)

以@qdread为例,您可以像任何其他数据帧一样索引SpatialPointsDataFrame。

创建reprex数据帧:

x <- SpatialPointsDataFrame(coords = data.frame(x = 1:10,y = 1:10),
                        data = data.frame(lat = 1:10,abu = exp(0:9)))

索引数据框和日志转换丰度列:

x.above.zero <- x[x$abu>0,]
x.above.zero$logAbu <- log(x.above.zero$abu)

然后您可以根据需要绘制它。

plot(x.above.zero$lat, x.above.zero$logAbu)
abline(lm(x.above.zero$logAbu~x.above.zero$lat))

通常,通过将元数据保存在一个对象中来保持元数据与空间数据相关联可以避免此问题。