將隱式缺失值轉換為顯式缺失值。這是tidyr::complete()
泛型的方法。
參數
- data
-
由數據庫查詢支持的惰性 DataFrame 。
- ...
-
要擴展的列規範。有關更多詳細信息,請參閱tidyr::expand。
- fill
-
一個命名列表,為每個變量提供一個值來代替缺失組合的 NA。
值
另一個tbl_lazy
。使用show_query()
查看生成的查詢,並使用collect()
執行查詢並將數據返回到R。
例子
df <- memdb_frame(
group = c(1:2, 1),
item_id = c(1:2, 2),
item_name = c("a", "b", "b"),
value1 = 1:3,
value2 = 4:6
)
df %>% tidyr::complete(group, nesting(item_id, item_name))
#> # Source: SQL [4 x 5]
#> # Database: sqlite 3.41.2 [:memory:]
#> group item_id item_name value1 value2
#> <dbl> <dbl> <chr> <int> <int>
#> 1 1 1 a 1 4
#> 2 1 2 b 3 6
#> 3 2 1 a NA NA
#> 4 2 2 b 2 5
# You can also choose to fill in missing values
df %>% tidyr::complete(group, nesting(item_id, item_name), fill = list(value1 = 0))
#> # Source: SQL [4 x 5]
#> # Database: sqlite 3.41.2 [:memory:]
#> group item_id item_name value1 value2
#> <dbl> <dbl> <chr> <dbl> <int>
#> 1 1 1 a 1 4
#> 2 1 2 b 3 6
#> 3 2 1 a 0 NA
#> 4 2 2 b 2 5
相關用法
- R dbplyr collapse.tbl_sql 計算查詢的結果
- R dbplyr count.tbl_lazy 按組計數觀察值
- R dbplyr copy_inline 在 dbplyr 查詢中使用本地 DataFrame
- R dbplyr copy_to.src_sql 將本地 DataFrame 複製到遠程數據庫
- R dbplyr backend-teradata 後端:Teradata
- R dbplyr escape 轉義/引用字符串。
- R dbplyr expand.tbl_lazy 擴展 SQL 表以包含所有可能的值組合
- R dbplyr distinct.tbl_lazy 子集不同/唯一行
- R dbplyr backend-sqlite 後端:SQLite
- R dbplyr pivot_wider.tbl_lazy 將數據從長軸轉向寬軸
- R dbplyr build_sql 構建 SQL 字符串。
- R dbplyr mutate.tbl_lazy 創建、修改和刪除列
- R dbplyr sql_expr 從 R 表達式生成 SQL
- R dbplyr get_returned_rows 提取並檢查返回的行
- R dbplyr dbplyr_uncount “計數”數據庫表
- R dbplyr backend-odbc 後端:ODBC
- R dbplyr head.tbl_lazy 對第一行進行子集化
- R dbplyr db-quote SQL 轉義/引用泛型
- R dbplyr backend-oracle 後端:甲骨文
- R dbplyr backend-snowflake 後端:雪花
- R dbplyr lahman 緩存並檢索 Lahman 棒球數據庫的 src_sqlite。
- R dbplyr backend-redshift 後端:紅移
- R dbplyr partial_eval 部分評估表達式。
- R dbplyr group_by.tbl_lazy 按一個或多個變量分組
- R dbplyr tbl_lazy 創建本地惰性 tibble
注:本文由純淨天空篩選整理自Hadley Wickham等大神的英文原創作品 Complete a SQL table with missing combinations of data。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。