Вы можете использовать функцию ends
, чтобы найти вершины, смежные с ребром. Если оба конца ребра находятся в v, это внутреннее ребро. Если у ребра один, но не оба конца в v, оно внешнее.
E1 = which(sapply(E(g), function(e) ends(g, e)[1]) %in% v)
E2 = which(sapply(E(g), function(e) ends(g, e)[2]) %in% v)
Internal = intersect(E1, E2)
External = setdiff(union(E1,E2), Internal)
## Spot check answer
ends(g, Internal[10])
[,1] [,2]
[1,] 6 3
> ends(g, External[20])
[,1] [,2]
[1,] 7 13