子集原始数据和空间数据[关闭]

问题描述 投票:0回答:3

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

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

r filter criteria spatial
3个回答
0
投票
df2 <- cbind(df_sp$Latitude, df$Abundance)
df2 <- df2[df2$Abundance > 0,:]
plot(df2)

0
投票

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


0
投票

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

plot(cbind(df_sp$Latitude, df$Abundance)[df2$Abundance > 0,])
© www.soinside.com 2019 - 2024. All rights reserved.