[R-br] Classificação de pontos em cada polígono em um shapefile

ASANTOS alexandresantosbr em yahoo.com.br
Quinta Janeiro 14 17:52:49 BRST 2016


Muito obrigado Éder!!


             Essa sua solução é ótima quando tenho SpatialPoints(), que 
é o meu caso, fiz com planar points do spatstat apenas para montar o CMR.


Valeu pela solução alternativa!!

-- 
======================================================================
Alexandre dos Santos
Proteção Florestal
IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso
Campus Cáceres
Caixa Postal 244
Avenida dos Ramires, s/n
Bairro: Distrito Industrial
Cáceres - MT                      CEP: 78.200-000
Fone: (+55) 65 8132-8112 (TIM)   (+55) 65 9686-6970 (VIVO)
e-mails:alexandresantosbr em yahoo.com.br
         alexandre.santos em cas.ifmt.edu.br
Lattes: http://lattes.cnpq.br/1360403201088680
OrcID: orcid.org/0000-0001-8232-6722
Researchgate: https://www.researchgate.net/profile/Alexandre_Santos10
LinkedIn: https://br.linkedin.com/in/alexandre-dos-santos-87961635
======================================================================

Em 14/01/2016 16:37, Éder Comunello escreveu:
> Olá, boa tarde!
>
> Alexandre, não sei se entendi bem sua necessidade, mas deixo uma 
> sugestão baseado no que você e o Elias já fizeram...
>
> #Pacotes
> require(shapefiles)
> require(rgdal)
> require(maptools)
> require(spatstat)
>
> #-------------------------------------------------------------------------------
> #Criação de 4 polígonos
>
> sr <- SpatialPolygons(list(
> Polygons(list(Polygon(cbind(c(180114, 180553, 181127, 181477, 181294, 
> 181007, 180409,
> 180162, 180114), c(332349, 332057, 332342, 333250, 333558, 333676,
> 332618, 332413, 332349)))),'1'),
> Polygons(list(Polygon(cbind(c(180042, 180545, 180553, 180314, 179955, 
> 179142, 179437,
> 179524, 179979, 180042), c(332373, 332026, 331426, 330889, 330683,
> 331133, 331623, 332152, 332357, 332373)))),'2'),
> Polygons(list(Polygon(cbind(c(179110, 179907, 180433, 180712, 180752, 
> 180329, 179875,
> 179668, 179572, 179269, 178879, 178600, 178544, 179046, 179110),
> c(331086, 330620, 330494, 330265, 330075, 330233, 330336, 330004,
> 329783, 329665, 329720, 329933, 330478, 331062, 331086)))),'3'),
> Polygons(list(Polygon(cbind(c(180304, 180403,179632,179420,180304),
> c(332791, 333204, 333635, 333058, 332791)))),'4')))
> plot(sr)
>
> #Converte em polígonos espaciais
> srdf=SpatialPolygonsDataFrame(sr, 
> data.frame(row.names=c('1','2','3','4'), PIDS=1:4))
> srdf em data
>
> #Seleção de pontos
> set.seed(222)
> pts <- rpoispp(lambda=0.000012, win=srdf)
> pts2 <- SpatialPoints(data.frame(pts$x, pts$y), 
> proj4string=CRS(as.character(NA)))
> points(pts2)
>
> #Classificação dos pontos em cada área
> pts$PIDS <- over(pts2, srdf)$PIDS
> pontos <- data.frame(x=pts$x, y=pts$y, PID=pts$PIDS)
>
> head(pontos)
> #          x        y PID
> # 1 179576.1 330096.8   3
> # 2 180224.7 332009.1   2
> # 3 178968.3 330136.9   3
> # 4 180495.7 332731.4   1
> # 5 178880.9 329897.9   3
> # 6 181047.9 333129.5   1
>
> table(pontos$PID)
> #  1  2  3  4
> # 17 18 16  6
>
> plot(sr); points(pontos, col=pontos$PID)
> #-------------------------------------------------------------------------------
>
>
>
>
>> ================================================
> Éder Comunello
> PhD Student in Agricultural Systems Engineering (USP/Esalq)
> Brazilian Agricultural Research Corporation (Embrapa)
> Dourados, MS, Brazil [22 16.5'S, 54 49.0'W]
>
>
>
>
> 2016-01-14 13:27 GMT-03:00 Elias Teixeira Krainski 
> <eliaskrainski em yahoo.com.br <mailto:eliaskrainski em yahoo.com.br>>:
>
>     conte o numero de pontos em cada area, basta usar nrow() em cada
>     elemento, e crie um indice com rep()
>
>     _______________________________________________
>     R-br mailing list
>     R-br em listas.c3sl.ufpr.br <mailto:R-br em listas.c3sl.ufpr.br>
>     https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>     Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e
>     fornea cdigo mnimo reproduzvel.
>
>
>
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forne�a c�digo m�nimo reproduz�vel.

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20160114/720e5ce8/attachment.html>


Mais detalhes sobre a lista de discussão R-br