У меня есть вектор имен и таблица расстоянийсоздания объекта graphNEL из данных
Nodes:
>V
SERPINA3
ABAT18
ABL1
ACADM
Edges:
>distances
SERPINA3 1 179 713 627 1937 5984 747 1450 681 718 749 1124 1839 1617 1639 2017 3619 5985 5986
ABL1 3 175 12 77 81 179 144 174 208 213 223 270 274 282 305 331 348 459 532 517 785 710 889 5988 972 1120 1064 1592 1322 1324 1331 1373 1526 1566 1717 1718 1802 1847 1947
ABAT18 2 5987
ACADM 4 5998
Из этих двух файлов, которые я хотел бы создайте объект graphNEL с помощью этой команды:
gR <- new("graphNEL", nodes=V, edgeL=edL1)
Есть ли у кого-нибудь идеи относительно того, как это должно быть сделано. Я как-то не могу получить список расстояний в список списков, чтобы соответствовать модели edgL.
После запуска этого commad:
edL1 <- vector("list", length=ncol(Dist1))
names(edL1) <- V
for(i in 1:ncol(Dist1))
edL1[[i]] <- list(edges=Dist1[,i], weights=sqrt(i))
gR <- new("graphNEL", nodes=V, edgeL=edL1)
Я получаю эту ошибку:
NA element in edges.
The graph is undirected and the following edges are not reciprocated: NA|SERPINA3, NA|ABAT18, NA|ABL1, NA|ACADM
Error in validObject(.Object) : invalid class “graphNEL” object: FALSE
Но нет NAs в данных. Есть ли у кого-нибудь идеи?
Благодаря Асса
каждый узел в списке - это список, в котором '$ edge' в списке является вектором индексов узлов, а не имен узлов и' $ weight' является вектором той же длины с весами (этот, я думаю, вы правильно). –