我想从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))
如何提取所有表而不必对所有表分别重复此过程?
1条答案
按热度按时间x8goxv8g1#
你可以做一个循环:
result_tables <- list()
for(t in tables){
result_tables[t] <- tbl(impala, in_schema("schema", t))}