2017-01-02 4 views
0

shapefile을 vignette spatstat으로 사용하여 shapefile의 각 기능을이 psp 목록의 요소로 표시하고 psp 객체 목록을 만들 수있었습니다.psp 객체 목록을 linnet으로 변환하는 방법

> x<- readShapeSpatial("includes/roadshapefile.shp") 
> out <- lapply([email protected], function(z) { lapply([email protected], as.psp) }) 
> dat <- [email protected] 
> for(i in seq(nrow(dat))) 
+ out[[i]] <- lapply(out[[i]], "marks<-", value=dat[i, , drop=FALSE]) 
> roadlist <- do.call("c", out) 

지금 내가 PSP 객체의 목록에서 전체 네트워크 linnet을 만들려는 다음과 같이 구체적으로, 나는 네트 섹션 3.2.4을 사용했다. 직접 함수가 있습니까? 아니면 각각의 psp 객체를 루프하여 각각 하나를 linnet으로 만들고 어떻게해서 그것을 완전한 네트워크로 결합해야합니까? as.linnet은 해당 클래스가 일반 목록이므로 psp의이 목록을 유효한 입력으로 사용하지 않습니다.

나는 작은 단계를 놓치고 있다고 느낍니다. 누군가 제발 나를 안내 해줄 수 있습니까?

일단 내가 linnet을 가지고 있다면, linfun을 사용하여 포인트 패턴을 만들고이 속성 (마크)에 액세스하여 비 균일 강도의 포인트를 만들고 싶습니다.

감사

+0

Adrian Baddeley는 최근 Roger Bivand에게'rednet' 코드를 보냈습니다. Roger Bivand는 R-forge에서 사용할 수있는 maptools의 개발 버전에 넣었습니다. http://r-forge.r-project.org/R/?group_id = 943 어쩌면 이것을 사용하여 쉽고 빠르게 linnet을 가져올 수 있습니다. 속성을 보존하고'linfun'이나'linim'에 넣을 수 있을지 잘 모르겠습니다. 나는 그것을 조사 할 필요가있다. –

+0

감사합니다. 나는 당신의 참고서를 읽을 것입니다. 그러면 spatstat를 사용하여 네트워크에서 비균질 강도를 생성하는 방법을 알려주시겠습니까? shapefile에서 최소한 2 개의 속성을 가져 오려고합니다. 또는 열이 삭제되기 전에 가능한 한 속성입니까? – BKS

+0

참조 해 주셔서 감사합니다. SpatialLines 객체에서 linnet을 생성하는 새로운 함수를 찾았지만 여러분이 말했듯이, 나는 속성을 잃어 버렸습니다. – BKS

답변

0

이 최신 버전 1.37에서 나는 특성을 보존 할 수 있어요, 그것은 것 같다 해결됩니다. 고맙습니다.