【问题标题】:How to read in .edges file in R?如何在 R 中读取 .edges 文件?
【发布时间】:2019-10-12 02:43:45
【问题描述】:

我从网络存储库 (http://networkrepository.com/actor-movie.php) 下载了一个网络对象。但我未能使用 igraph::read.graph 在 R 中加载此 .edges 文件,但出现以下错误:

dat <- read.graph("actor-movie.edges")

Error in read.graph.edgelist(file, ...) : 
  At foreign.c:101 : parsing edgelist file failed, Parse error

有人知道如何在 R 中加载这个网络吗?

【问题讨论】:

    标签: r igraph


    【解决方案1】:

    认为 igraph::read_graph 的错误是由分隔符引起的——在文件中它是逗号分隔的,但函数需要format="edgelist" 的空格。但是,我们可以使用标准导入工具将 fie 作为数据框读取。然后可以使用igraph函数来形成图形。

    # download
    pth <- "http://nrvis.com/download/data/misc/actor-movie.zip"
    download.file(pth, destfile = "actor-movie.zip")
    
    # see file names
    unzip("actor-movie.zip", list = TRUE)
    
    # unzip
    unz <- unzip("actor-movie.zip", "actor-movie.edges")
    
    # quick look : looks like edge list
    readLines(unz, n=10)
    
    # skip first line to avoid % bipartite unweighted" 
    dat <- read.table(unz, skip=1, sep=",")
    
    # look
    head(dat)
    str(dat)
    
    # load as a graph
    library(igraph)
    
    g <- graph_from_data_frame(dat)
    g
    

    【讨论】:

      猜你喜欢
      • 2021-04-24
      • 2015-12-07
      • 2016-11-30
      • 2015-11-22
      • 2016-11-15
      • 2014-09-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多