使用tidyquant库中的tq_get函数创建for循环,以按R中的州获取失业申报?[包括图像和代码]

使用tidyquant库中的tq_get函数创建for循环,以按R中的州获取失业申报?[包括图像和代码],r,loops,for-loop,quantmod,R,Loops,For Loop,Quantmod,目标:我想在一张表格中按州列出美国每个州的初始失业申请 下面是我下面的例子: 下面是该链接中的代码片段: ga_claims <- "GAICLAIMS" %>% tq_get(get = "economic.data", from = "1999-01-01") %>% rename(claims = price) ga_索赔% tq_get(get=“economic.data”, from=“1999-01-01”)%>% 重命名

目标:我想在一张表格中按州列出美国每个州的初始失业申请

下面是我下面的例子:

下面是该链接中的代码片段:

ga_claims <- 
  "GAICLAIMS" %>% 
  tq_get(get = "economic.data", 
         from = "1999-01-01") %>% 
  rename(claims = price) 
ga_索赔%
tq_get(get=“economic.data”,
from=“1999-01-01”)%>%
重命名(索赔=价格)
第一个过滤器适用于格鲁吉亚。但是,我希望它适用于所有州。我能够创建一个csv文件,将所有州缩写和“ICLAIMS”连接起来。我只想通过下面的函数传递一个for循环。附件是我上传的csv的屏幕截图,其中包含了该格式的所有州…“CAICLAIMS”,“NYICLAIMS”,“ALICLAIMS”等等


我们可以创建一个函数:

library(dplyr)
library(tidyquant)

get_data <- function(x) {
  x %>% 
    tq_get(get = "economic.data",from = "1999-01-01") %>% 
    rename(claims = price) 
}
如果您想将其合并为一个数据帧,我们可以执行以下操作:

do.call(rbind, Map(cbind, lapply(df$Claim_Code, get_data), 
               Claim_Code = df$Claim_Code))

#         date claims Claim_Code
#1   1999-01-02   9674  GAICLAIMS
#2   1999-01-09  19455  GAICLAIMS
#3   1999-01-16  20506  GAICLAIMS
#4   1999-01-23  12932  GAICLAIMS
#5   1999-01-30  10871  GAICLAIMS
#6   1999-02-06   7997  GAICLAIMS
或者使用
purrr

library(purrr)
map2_df(map(df$Claim_Code, get_data), df$Claim_Code, cbind)
数据

df <- data.frame(Claim_Code = c('GAICLAIMS', 'ALICLAIMS', 'AZICLAIMS'), 
                 stringsAsFactors = FALSE)

df感谢您的快速响应,每次我运行lappy函数时,我都会被转移到一个新窗口,并在控制台中收到消息“从:tq_get(,get=“economic.data”,from=“1999-01-01”)Browse[1]>”您是否在函数中的某个位置添加了
browser()
?看起来函数中的某个地方连接了调试器。
df <- data.frame(Claim_Code = c('GAICLAIMS', 'ALICLAIMS', 'AZICLAIMS'), 
                 stringsAsFactors = FALSE)