Хранить возвращаемые значения функции в объектах igraph в R - PullRequest
0 голосов
/ 25 мая 2018

У меня есть функция, которая возвращает объект igraph с именем readFn ().Я хочу вызвать эту функцию с помощью цикла for и сохранить результат

files <- c("345","456")

for(i in files){
  g <- readFn(i) 
}

#Error: object 'g' not found
#In addition: There were 50 or more warnings (use warnings() to see the first #50)


readFn <- function(i) {
#some lines
graph #graph -> is an igraph object to be returned to for loop
}

Я хочу получить 2 графика в объектах igraph с именами g_345 и g_456

1 Ответ

0 голосов
/ 25 мая 2018

Используя lapply :

library(igraph)

# example function that returns igraph object
readFn <- function(i) {
  graph.empty(n = 2)
  }

files <- c("345","456")

g <- lapply(files , readFn)

# assign names
names(g) <- paste0("g_", files)

Тогда мы можем получить доступ к каждому графику по имени:

g$g_345

# IGRAPH 598e70c D--- 2 0 -- 
# + edges from 598e70c:
...