使用 tidyquant 库中的 tq_get 函数创建循环以获取 R 中各州的失业申请? [包括图像和代码]
Creating for loop using tq_get function from the tidyquant library to get unemployment filings by state in R? [Image & Code Included]
目标: 我想在 table 中获取 U.S 中每个州的初始失业申请。
这是我正在关注的示例:Link
这是 link 中的一小段代码:
ga_claims <-
"GAICLAIMS" %>%
tq_get(get = "economic.data",
from = "1999-01-01") %>%
rename(claims = price)
第一个过滤器适用于格鲁吉亚。但是,我想要所有州。我能够创建一个 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)
}
并通过 lapply
传递每个 Claim_Code
。
lapply(df$Claim_Code, get_data)
如果你想把它合并成一个数据帧,我们可以这样做:
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)
目标: 我想在 table 中获取 U.S 中每个州的初始失业申请。
这是我正在关注的示例:Link
这是 link 中的一小段代码:
ga_claims <-
"GAICLAIMS" %>%
tq_get(get = "economic.data",
from = "1999-01-01") %>%
rename(claims = price)
第一个过滤器适用于格鲁吉亚。但是,我想要所有州。我能够创建一个 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)
}
并通过 lapply
传递每个 Claim_Code
。
lapply(df$Claim_Code, get_data)
如果你想把它合并成一个数据帧,我们可以这样做:
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)