0

在对 igraph 对象 (g) 进行多次操作后,我最终发现“id”属性充满了嵌套列表。

它看起来像这样:

head(V(g)$id)

[[1]]
[[1]][[1]]
[[1]][[1]][[1]]
[1] "http://www.parliament.uk/"


[[2]]
[[2]][[1]]
[[2]][[1]][[1]]
[1] "http://www.businesslink.gov.uk/"


[[3]]
[[3]][[1]]
[[3]][[1]][[1]]
[1] "http://www.number10.gov.uk/"

……等等。

我需要“取消嵌套”此列表,使其变为:

head(V(g)$id)
[1] "http://www.parliament.uk/"       "http://www.businesslink.gov.uk/"
[3] "http://www.number10.gov.uk/"     "http://www.ombudsman.org.uk/"
[5] "http://www.hm-treasury.gov.uk/"  "http://data.gov.uk/"

当 igraph 将对象导出到 graphml 文件时,嵌套列表会导致问题。它导致“id”被分配默认标签(例如n0、n1、n2...)。

我尝试了其他几个问题,尤其是这个问题。但是,我无法让它工作。真是令人沮丧!

4

1 回答 1

2

你只是在寻找unlist,也许?

L <- list(list(list("A")), list(list("B")))
L
# [[1]]
# [[1]][[1]]
# [[1]][[1]][[1]]
# [1] "A"
# 
#
#
# [[2]]
# [[2]][[1]]
# [[2]][[1]][[1]]
# [1] "B"
#
#
#
unlist(L)
# [1] "A" "B"
于 2013-11-05T07:05:53.640 回答