R:将循环的值分配给新矩阵

R:将循环的值分配给新矩阵,r,R,我目前正在尝试将if语句所在的所有行分配到一个新的矩阵中。我正在做以下工作: obj=data.frame() tol = 1 #tolerance level for (i in 1:10) { if(abs(X$pickup[i] - 40.6397) < tol && abs(X$drop[i] - -73.7789) < tol){ obj[i, ] <- X[i] } } obj=data

我目前正在尝试将if语句所在的所有行分配到一个新的矩阵中。我正在做以下工作:

obj=data.frame() 

tol = 1                        #tolerance level

for (i in 1:10) { 

if(abs(X$pickup[i] - 40.6397) < tol && abs(X$drop[i] - -73.7789) < tol){

obj[i, ] <- X[i]

}

}
obj=data.frame()
tol=1#公差水平
因为(我在1:10中){
如果(abs(X$pickup[i]-40.6397)obj[i,]我认为您正在尝试提取
X
的行,其中
X$pickup
在40.6397的某个容差级别内,
X$drop
在-73.7789的某个容差级别内。您可以通过以下一行操作:

obj <- X[abs(X$pickup - 40.6397) < tol & abs(X$drop - -73.7789) < tol,]

obj请说明您得到了什么,以及您想要得到什么作为输出,因此,
&
&
不是相同的。我得到的是:obj[10,0]…X有24列