簡體   English   中英

如何將字符串向量映射為函數的參數?

[英]How can I map a vector of strings as argument of a function?

我想使用dplyr和implyr的tbl()和in_schema()函數從Impala連接中提取數據。 我需要分別為每個表執行此操作,並需要使用in_schema()函數和用於定義表的字符串來指定表。 但是,只能提供一個字符串(即一個表)作為參數,而不是字符串向量。 我想知道是否存在一種更優雅的映射方式,而不是復制粘貼相同的代碼x次。 有關詳細信息,請參見示例代碼。

以這個字符串向量為例:

tables <- c("table_a", "table_b", "table_c")

要提取一個表,代碼如下所示:

table_a <- tbl(impala, in_schema("schema", "table_a"))

這是行不通的,這是有道理的,因為只需要一個字符串值:

tables <- tbl(impala, in_schema("schema", tables))

如何提取所有表,而不必分別對所有表重復此過程?

您可以進行循環:

result_tables <- list()

for(t in tables){

result_tables[t] <- tbl(impala, in_schema("schema", t))

}

暫無
暫無

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

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