<div dir="ltr">Hello,<div><br></div><div>I'm slowly learning the implementation details of rgeos after being a longtime user of GDAL and PostGIS.  I was doing some work that necessitated doing some spatial unions which are  aggregated by a feature attribute and was surprised to see that the original dissolve field (or `group by` field) wasn't returned in a data frame, but rather as row IDs.  This was inconvenient for me, so I wrote a short helper function to give me back my desired output.</div><div><br></div><div><font face="monospace">dissolvePolygons <- function (<br>    input_SPDF, # SPDF object to dissolve<br>    diss_field # name of column to dissolve by, as string<br>    ) {<br>    diss_command <- sprintf("rgeos::gUnaryUnion(input_SPDF, input_SPDF$%s)", diss_field)<br>    data_command <- sprintf("data.frame(%s = row.names(out_polys))", diss_field)<br>    out_polys <- eval(parse(text = diss_command))<br>    data <- eval(parse(text = data_command))<br>    output_SPDF <- SpatialPolygonsDataFrame(out_polys,data)<br>    <br>    return(output_SPDF)<br>    }<br><br># Usage<br>zones <- dissolvePolygons(sample_tracts, "zone")</font><br></div><div><font face="monospace"><br></font></div><div>I'm curious what a preferred method is to work with the original row output?  I was finding it problematic to tie it back to other data and was hoping to find some examples of how to do so.<font face="monospace"><br></font></div><div><br></div><div>Thanks,</div><div><br></div><div>Roger</div><div>--</div></div>