Sory but I'm not getting this correctly. a data.frame
> print(traj_subam, row.names =F) ID TIME_STAMP DAY_PERIOD SEASON TARGET_ID LATITUDE LONGITUDE SPEED HEADING DISTANCE 7127128 2010-03-12 06:26:45 2 4 1712762 38.79497 -8.756062 0.5656855 46 2.828427 7127143 2010-03-12 06:26:50 2 4 1712762 38.79539 -8.755520 0.2000000 1 1.000000 7127156 2010-03-12 06:26:55 2 4 1712762 38.79560 -8.755520 0.7211103 34 3.605551 7127175 2010-03-12 06:27:00 2 4 1712762 38.79624 -8.754979 0.0000000 0 0.000000 7422814 2010-03-14 15:04:34 1 4 1782729 38.82139 -8.738729 0.4472136 153 2.236068 7422841 2010-03-14 15:04:39 1 4 1782729 38.82096 -8.738460 0.4472136 334 2.236068 7422865 2010-03-14 15:04:45 1 4 1782729 38.82139 -8.738729 0.0000000 0 0.000000 > Then #!Lines ltraj <- Lines(sapply(split(traj_subam[c("LONGITUDE","LATITUDE")], traj_subam$TARGET_ID), Line), ID = as.character(unique(traj_subam$TARGET_ID))) #! SpatialLines ltraj <- SpatialLines(list(ltraj)) SLDF cannot be created with ltraj <- SpatialLinesDataFrame(ltraj, data.frame("TARGET_ID" = unique(traj_subam$TARGET_ID)), match.ID = T) neither with match.ID = T or F Paulo 2010/5/26 Paulo Eduardo Cardoso <paulo.mailing.l...@gmail.com>: > When I try to coerce Lnes to SLDF with > > ltraj <- Lines(sapply(split(traj_subam[c("LONGITUDE","LATITUDE")], > traj_subam$TARGET_ID), Line)) > ltraj <- SpatialLinesDataFrame(ltraj, traj_subam, match.ID = TRUE) > > I get > > Error in slot(sl, "lines") : > no slot of name "lines" for this object of class "Lines" > > Any idea? > > 2010/5/26 Paulo Eduardo Cardoso <paulo.mailing.l...@gmail.com>: >> Thanks! >> >> But by doing this >> >> ltraj <- Lines(sapply(split(traj_subam[c("LONGITUDE","LATITUDE")], >> traj_subam$TARGET_ID), Line)) >> >> we get >> >> Slot "ID": >> [1] NA >> >> >> We are not holding the [Target_ID] column as ID ? >> >> 2010/5/25 Edzer Pebesma <edzer.pebe...@uni-muenster.de>: >>> Here's an example how a Lines object is built from several sets of >>> points (meuse data, split by soil type): >>> >>> library(sp) >>> data(meuse) >>> Lines(sapply(split(meuse[c("x","y")], meuse$soil), Line)) >>> >>> Note that meuse is used as a data.frame in this example; use >>> as.data.frame on your SPDF to get it. >>> >>> I hope this helps, >>> >>> On 05/25/2010 04:16 PM, Paulo Eduardo Cardoso wrote: >>>> Hi, >>>> >>>> How can one coerce spatial point to spatial line? >>>> >>>> I'm struggling to find a way of coerce a point SPDF object to Lines >>>> based in a ID [TARGET_ID] field. >>>> >>>> Any idea will be very welcome. >>>> >>>> Formal class 'SpatialPointsDataFrame' [package "sp"] with 5 slots >>>> ..@ data :'data.frame': 28 obs. of 8 variables: >>>> .. ..$ ID : int [1:28] 462964 462990 463015 463034 463052 463069 >>>> 463083 463102 463122 463144 ... >>>> .. ..$ TIME_STAMP: POSIXlt[1:28], format: "2009-07-26 09:00:07" >>>> "2009-07-26 09:00:13" "2009-07-26 09:00:19" "2009-07-26 09:00:25" ... >>>> .. ..$ DAY_PERIOD: int [1:28] 1 1 1 1 1 1 1 1 1 1 ... >>>> .. ..$ SEASON : int [1:28] 2 2 2 2 2 2 2 2 2 2 ... >>>> .. ..$ TARGET_ID : int [1:28] 108426 108426 108426 108426 108426 108426 >>>> 108426 108426 108426 108426 ... >>>> .. ..$ SPEED : num [1:28] 0.283 0.6 0.4 0.2 0.2 ... >>>> .. ..$ HEADING : int [1:28] 134 1 179 179 179 271 123 179 179 90 ... >>>> .. ..$ DISTANCE : num [1:28] 1.41 3 2 1 1 ... >>>> ..@ coords.nrs : int [1:2] 7 6 >>>> ..@ coords : num [1:28, 1:2] -8.71 -8.71 -8.71 -8.71 -8.71 ... >>>> .. ..- attr(*, "dimnames")=List of 2 >>>> .. .. ..$ : NULL >>>> .. .. ..$ : chr [1:2] "LONGITUDE" "LATITUDE" >>>> ..@ bbox : num [1:2, 1:2] -8.82 38.73 -8.69 38.8 >>>> .. ..- attr(*, "dimnames")=List of 2 >>>> .. .. ..$ : chr [1:2] "LONGITUDE" "LATITUDE" >>>> .. .. ..$ : chr [1:2] "min" "max" >>>> ..@ proj4string:Formal class 'CRS' [package "sp"] with 1 slots >>>> .. .. ..@ projargs: chr " +init=epsg:4326 +proj=longlat +ellps=WGS84 >>>> +datum=WGS84 +no_defs +towgs84=0,0,0" >>>> >>>> >>>> Paulo Eduardo Cardoso >>>> >>>> _______________________________________________ >>>> R-sig-Geo mailing list >>>> R-sig-Geo@stat.math.ethz.ch >>>> https://stat.ethz.ch/mailman/listinfo/r-sig-geo >>> >>> -- >>> Edzer Pebesma >>> Institute for Geoinformatics (ifgi), University of Münster >>> Weseler Straße 253, 48151 Münster, Germany. Phone: +49 251 >>> 8333081, Fax: +49 251 8339763 http://ifgi.uni-muenster.de >>> http://www.52north.org/geostatistics e.pebe...@wwu.de >>> >>> _______________________________________________ >>> R-sig-Geo mailing list >>> R-sig-Geo@stat.math.ethz.ch >>> https://stat.ethz.ch/mailman/listinfo/r-sig-geo >>> >> > _______________________________________________ R-sig-Geo mailing list R-sig-Geo@stat.math.ethz.ch https://stat.ethz.ch/mailman/listinfo/r-sig-geo