2014-11-09 2 views
0

У меня есть функция, где я ищу фрейм данных из метода с определенным диапазоном, например 1-500, но не могу попросить функцию дать все значения за один снимок. Итак, я попытался создать функцию для итерации значения из блока по 100 штук.Добавление фрейма данных в список внутри функции в R

relationstatus <- function(n){ 
    mylist <- list() 
    for(x in seq(1,n,100)) { 
    y = x+99 
     if(y > n){ 
     y = n 
     } 
    myFriends_info <- getUsers(myFriends$id[x:y], token=access_token, private_info=TRUE) 
    #store the above myFriends_info in the list in each iteration 
    append(mylist,myFriends_info) 
    head(myFriends_info) 
    } 
    return(mylist) 
} 

Input - 500 
Output - list containing data frames(myFriends_info data frames) 

Так за 500 ввода, я буду ожидать список, содержащий 5 кадров данных

, а затем, наконец, я ожидаю все эти кадры данных в виде списка, а затем функция возвращать список но я ожидаю, что функция будет работать так же, как в обычных технологиях, таких как Java или что-то, но я не могу ее решить. Любой лучший способ решить или там, где я делаю неправильно в моем списке возвращает нуль

+0

Можете ли вы описать (и, в идеале, показать с помощью R-кода) для ввода и вывода этой функции? – Thomas

+0

@ Томас обновил то же самое –

ответ

1

Это было просто, мне просто нужно переделать на моем list-

relationstatus <- function(n){ 
    mylist <- list() 
    j = 1 
    for(x in seq(1,n,100)) { 
    y = x+99 
     if(y > n){ 
     y = n 
     } 
    myFriends_info <- getUsers(myFriends$id[x:y], token=access_token, private_info=TRUE) 
    sEOG <- paste("", j, sep="") 
    mylist[[sEOG]] <-myFriends_info 
    j = j+ 1 
    } 
    return(mylist) 
} 
Смежные вопросы