List 使用for和read.csv创建获取数据的函数

List 使用for和read.csv创建获取数据的函数,list,function,for-loop,read.csv,List,Function,For Loop,Read.csv,我正在尝试创建一个函数,直接从机构的网站捕获集合和数据 我可以使用for()函数为每个数据系列生成URL,但是当使用read.csv和return函数时,它只返回第一个结果 当使用print()函数时,它会将所有需要的结果重新装载为独立结果,但我无法将其保存为对象。我尝试了几种使用函数的方法,但根本不起作用 有人能帮忙吗 getData <- function(serie, start.date='', final.date='', name=''){

我正在尝试创建一个函数,直接从机构的网站捕获集合和数据

我可以使用for()函数为每个数据系列生成URL,但是当使用read.csv和return函数时,它只返回第一个结果

当使用print()函数时,它会将所有需要的结果重新装载为独立结果,但我无法将其保存为对象。我尝试了几种使用函数的方法,但根本不起作用

有人能帮忙吗

getData <- 
        function(serie, start.date='', final.date='', name=''){
                for(i in serie){
                urlbase <- 
                        list(paste('http://example',
                              serie,
                              'part1',
                              '&start.date=',
                              start.date,
                              '&final.date=',
                              final.date, 
                              sep = ''))
                #return(urlbase)
                }
                for(n in 1:length(urlbase[[1]])){
                        df  <-  list()
                        df <- list(read.csv(urlbase[[1]][n],  
                        sep = ';', dec = ',', nrows = 2, 
                        col.names = c('Date', name[n])
                        )
                        )
                        return(df)
                }    
                
}
url.test <- getData(serie =  c('1', '2', '2', '4'),
         start.date = '01/01/2013', 
         final.date =  '01/07/2020',
         name = c('1','2','3', '4'))
使用return函数的输出仅返回列表中的第一项

> url.test
[[1]]
        Data 1
1 01/01/2013 19.94
2 01/02/2013 19.98
使用print函数的输出将唯一地返回所有值

[[1]]
        Date 1
1 01/01/2013 19.94
2 01/02/2013 19.98

[[1]]
        Date 2
1 01/01/2013 15.22
2 01/02/2013 15.12

[[1]]
        Date 3
1 01/01/2013 25.70
2 01/02/2013 25.93

[[1]]
        Date 4
1 01/01/2013 17.58
2 01/02/2013 17.42
[[1]]
        Date 1
1 01/01/2013 19.94
2 01/02/2013 19.98

[[1]]
        Date 2
1 01/01/2013 15.22
2 01/02/2013 15.12

[[1]]
        Date 3
1 01/01/2013 25.70
2 01/02/2013 25.93

[[1]]
        Date 4
1 01/01/2013 17.58
2 01/02/2013 17.42