簡體   English   中英

應用於R中的嵌套列表

[英]Lapply in a nested list in R

我正在嘗試將函數應用於嵌套列表。 我有以下列表:

lista_a <- list("PEC", "45", "1991")
lista_b <- list("PL", "4580", "1990")
lista_c <- list("PL", "200", "1980")

嵌套在以下列表中:

lista_final <- list(lista_a, lista_b, lista_c)

我想應用以下函數(它使用來自congressbr包的cham_votes函數):

funcao <- function(x){ tryCatch(do.call(cham_votes, x), error=function(e){NA})}

lista_final每個元素。 我正在嘗試使用do.call,因為cham_votes具有三個輸入(類型,數字和年份),並且我想同時使用它們,因此我需要一個列表。

您是否知道如何將該函數一次lista_final所有元素? 最終結果應該是數據幀列表。

謝謝你的幫助。

函數cham_votes()期望最后兩個參數是整數。 因此,您必須首先將它們轉換如下:

listafinal <- lapply(listafinal, function(x) c(x[1], lapply(x[2:3], as.integer)))

然后,您只需使用lapply

lapply(lista_final, funcao)

這將返回元素的列表的每一個是相同的類型的函數的返回值的funcao()其是NA或類一tibble tbltbl_df ,和dataframe

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM