This function deletes some of the vertices and edges (segments) in the
  linear network.
The arguments retainvertices and retainedges can be
  any kind of subset index: a vector of positive integers specifying which
  vertices/edges should be retained; a vector of negative integers
  specifying which vertices/edges should be deleted; or a logical vector
  specifying whether each vertex/edge should be retained (TRUE)
  or deleted (FALSE).
Vertices are indexed in the same sequence as in
  vertices(as.linnet(X)).
  Segments are indexed in the same sequence as in
  as.psp(as.linnet(X)).
The argument retainedges has higher precedence than
  retainvertices in the sense that:
- If - retainedgesis given, then
    any vertex which is an endpoint of a retained edge will also be
    retained.
 
- If - retainverticesis given and- retainedgesis missing,
    then any segment joining two retained vertices will also be retained.
 
- Thus, when both - retainverticesand- retainedgesare
    given, it is possible that more vertices will be retained than those
    specified by- retainvertices.
 
After the network has been altered, other consequential changes will
  occur, including renumbering of the segments and vertices.
  If X is a point pattern on a linear network, then data points
  will be deleted if they lie on a deleted edge.