首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用tidyquant库中的tq_get函数创建for循环,以按R中的状态获取失业文件?[包括图像和代码]

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

Stack Overflow用户
提问于 2020-04-20 00:55:23
回答 1查看 112关注 0票数 0

目标:,我想在美国每个州的表格中按州得到初步的失业申请。

下面是我下面的示例:链接

这里是该链接中代码的一个快速片段:

代码语言:javascript
复制
ga_claims <- 
  "GAICLAIMS" %>% 
  tq_get(get = "economic.data", 
         from = "1999-01-01") %>% 
  rename(claims = price) 

第一个过滤器是给乔治亚州的。然而,我想要它为所有的州。我能够创建一个csv文件,将所有状态缩写与“ICLAIMS”连接起来。我只想通过下面看到的函数传递一个for循环。附件是我上传的csv的屏幕截图,其中包含了所有的状态.‘CAICLAIMS’,'NYICLAIMS','ALICLAIMS‘等等.

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-20 01:01:50

我们可以创建一个函数:

代码语言:javascript
复制
library(dplyr)
library(tidyquant)

get_data <- function(x) {
  x %>% 
    tq_get(get = "economic.data",from = "1999-01-01") %>% 
    rename(claims = price) 
}

并将每个Claim_Code通过lapply

代码语言:javascript
复制
lapply(df$Claim_Code, get_data)

如果您想将它合并成一个数据帧,我们可以这样做:

代码语言:javascript
复制
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

代码语言:javascript
复制
library(purrr)
map2_df(map(df$Claim_Code, get_data), df$Claim_Code, cbind)

数据

代码语言:javascript
复制
df <- data.frame(Claim_Code = c('GAICLAIMS', 'ALICLAIMS', 'AZICLAIMS'), 
                 stringsAsFactors = FALSE)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61313643

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档