如何将字符串向量Map为函数的参数?

dgiusagp  于 2021-06-26  发布在  Impala
关注(0)|答案(1)|浏览(234)

我想从impala连接中提取数据,使用dplyr和implyr中的tbl()和in\u schema()函数。我需要对每个表分别执行此操作,并且需要使用in\u schema()函数和一个字符串来定义表。但是,只有一个字符串(即一个表)可以作为参数给出,而不是字符串向量。我想知道是否有一种更优雅的方法来Map这段代码,而不是将相同的代码复制粘贴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))

如何提取所有表而不必对所有表分别重复此过程?

x8goxv8g

x8goxv8g1#

你可以做一个循环:
result_tables <- list() for(t in tables){ result_tables[t] <- tbl(impala, in_schema("schema", t)) }

相关问题