2015-01-27 3 views
0

입니다. R에 매우 익숙하며 ~ 500k 점을 포함하는 모양 파일이 무작위로 배포되는지 여부를 확인하려고합니다. 내가 인수에 대해 입력 한 것과 관계없이 동일한 오류 메시지가 계속 표시됩니다.카이 제곱 분산 테스트의 오류가

> library(spatstat) 

spatstat 1.40-0  (nickname: ‘Do The Maths’) 
For an introduction to spatstat, type ‘beginner’ 
> as.ppp(area) 
marked planar point pattern: 500000 points 
Mark variables: 
[1] OBJECTID Encoded_Ti Time_  Filter  Category Severity  Action_ Hit_Count Profile Encoded_So Source_IP Source_Por Encoded_De 
[14] Dest_IP Dest_Port VLAN_Tag Source_Cou Source_Reg Source_Cit  Source_Lat Source_Lon Dest_Count Dest_Regio Dest_City Dest_Latit Dest_Longi 
window: rectangle = [-159.964, 178.417] x [-46.4, 70.6349] units 
Warning message: 
some mark values are NA in the point pattern x 
> quadrat.test(area) 
Error in UseMethod("quadrat.test") : 
no applicable method for 'quadrat.test' applied to an object of class   "c('SpatialPointsDataFrame', 'SpatialPoints', 'Spatial')" 


<bytecode: 0x0000000024e7a660> 
<environment: namespace:spatstat> 

그래서 나의 다음 시도했다 :

> X <- ppp(x, y, c(-159.964, 178.417), c(-46.4, 70.6349)) 
Warning message: 
In ppp(x, y, c(-159.964, 178.417), c(-46.4, 70.6349)) : 
data contain duplicated points 
> quadrat.test(X) 
Error in rectquadrat.countEngine(X$x, X$y, tess$xgrid, tess$ygrid) : 
xbreaks do not span the actual range of x coordinates in data 

내 마지막 시도 : 여기

내가 처음부터 무엇을 가지고 내가 말한

> quadrat.test(X, nx = 20, ny = 20) 
Error in rectquadrat.countEngine(X$x, X$y, tess$xgrid, tess$ygrid) : 
xbreaks do not span the actual range of x coordinates in data 
> quadrat.test(X, nx = 20, ny = 20, xbreaks= NULL, ybreaks = NULL) 
Error in rectquadrat.countEngine(X$x, X$y, tess$xgrid, tess$ygrid) : 
xbreaks do not span the actual range of x coordinates in data 
> data(X) 
Warning message: 
In data(X) : data set ‘X’ not found 
> quadrat.test(X) 
Error in rectquadrat.countEngine(X$x, X$y, tess$xgrid, tess$ygrid) : 
xbreaks do not span the actual range of x coordinates in data 
> quadrat.test(X, 10) 
Error in rectquadrat.countEngine(X$x, X$y, tess$xgrid, tess$ygrid) : 
xbreaks do not span the actual range of x coordinates in data 

를 같이, 나는 이것에 아주 새롭 아마추어 python 경험이 있는다, 그러나 나는 프로젝트를 위해이 기능을 이용할 필요가있는 대학원생이다. 어떤 도움이라도 대단히 감사하겠습니다.

건배

답변

0

당신은 R이 (거의) 결코 당신의 입력 변수를 변경하지 알고 있어야합니다, 그래서 당신은 거기에서 당신의 명령에 출력 작업을 할당해야합니다.

X <- as.ppp(area) 

는 그런 다음 새로 만든 ppp 객체에 quadratcount 또는 quadrat.test 기능을 적용 할 수 있습니다 :

areaas.ppp하여 ppp 객체로 변환 할 수있는 변수가 특히 경우는 결과에 이름을 지정해야
quadratcount(X, nx=20, ny=20) 
quadrat.test(X, nx=20, ny=20) 

~ 500k 포인트를 사용하면 quadrats의 20x20 격자가 quadrat counting의 매우 큰 공간 규모처럼 보일 수 있지만 물론 해당 설정에 따라 다릅니다.

재현 가능한 예제를 제공하지 않았기 때문에 이러한 명령이 설정과 함께 작동하는지 여부는 알 수 없지만 적절한 데이터로 작동합니다.

관련 문제