удалить вершины в r как сетевой объект - PullRequest
0 голосов
/ 18 апреля 2020

У меня есть некоторые данные, подобные приведенным ниже, эти данные можно найти в сети библиотеки, когда я пытаюсь использовать list.vertex.attributes (v), он дает мне вершину "Grade" "na" "Race" "Sex" ". Имена ", поэтому я хочу удалить какой-то узел с Race =" natAm ", я пробовал этот код, но моя функция удаления не работает. Вы можете мне помочь?

data(faux.magnolia.high)
v<- faux.magnolia.high
v
gr <- v %v% "Race"
table(gr)

del <- v %v% "Race"
n2 <- v %s% which(del== "NatAm")
n2
y<-delete.vertices(n,c(114,890)) 
y

также эта строка gr <- v% v% "Race", выдает следующее: </p>

Asian Black  Hisp NatAm Other White 
   48   261    68    24     7  1053 

1 Ответ

1 голос
/ 18 апреля 2020

Чтобы удалить вершины, где Race=="NatAm", вы можете указать это в аргументе vid delete.vertices(). Но будьте осторожны - delete.vertices() изменяет сеть на месте !

library(statnet)

data(faux.magnolia.high)
v<- faux.magnolia.high
v
#>  Network attributes:
#>   vertices = 1461 
#>   directed = FALSE 
#>   hyper = FALSE 
#>   loops = FALSE 
#>   multiple = FALSE 
#>   bipartite = FALSE 
#>   total edges= 974 
#>     missing edges= 0 
#>     non-missing edges= 974 
#> 
#>  Vertex attribute names: 
#>     Grade Race Sex vertex.names 
#> 
#>  Edge attribute names not shown
gr <- v %v% "Race"
table(gr)
#> gr
#> Asian Black  Hisp NatAm Other White 
#>    48   261    68    24     7  1053

# Deletes in place!
delete.vertices(v, vid = which(v %v% "Race"=="NatAm"))
gr <- v %v% "Race"
table(gr)
#> gr
#> Asian Black  Hisp Other White 
#>    48   261    68     7  1053

Создано в 2020-04-18 представ пакет (v0.3.0)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...