子集原始数据和空间数据

Subset original data and spatial data

我创建了一个空间点数据框 (df_sp$Latitude),并想绘制一个图表,与我的原始数据框 (df$Abundance) 中的变量进行比较。

但是,我想从 df$abundance 中过滤掉所有大于零的值。我将如何过滤掉这些以及 df_sp$latitude 中的相应变量,而不会以我当前遇到的错误结束?

Error in xy.coords(x, y, xlabel, ylabel, log) : 
'x' and 'y' lengths differ

我可以像这样生成一个简单的图:

plot(df_sp$Latitude, df$Abundance)

但是,我不确定如何对我的数据进行子集化以包含大于零的丰度值。

df2 <- cbind(df_sp$Latitude, df$Abundance)
df2 <- df2[df2$Abundance > 0,:]
plot(df2)

为此,您应该将 x 和 y 绑定在一起,以便同时过滤它们。否则你将有不同的长度参数。然后你可以像以前一样绘图。此时,您只需用两行绘制结果矩阵,r 会将第一列作为 x 坐标,将第二列作为 y 坐标。下面的代码完成了这个:

plot(cbind(df_sp$Latitude, df$Abundance)[df2$Abundance > 0,])

谢谢你的回复,嗯,我只需要将这两个数据集cbind,然后过滤就可以了