子集原始数据和空间数据

时间:2018-01-05 01:09:52

标签: r filter criteria spatial

我创建了一个空间点数据框(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)

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

3 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

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

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

答案 2 :(得分:0)

感谢您的回复,是的,我只需要解析这两个数据集,然后过滤它们