當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R dbplyr complete.tbl_lazy 完成缺少數據組合的 SQL 表


將隱式缺失值轉換為顯式缺失值。這是tidyr::complete() 泛型的方法。

用法

# S3 method for tbl_lazy
complete(data, ..., fill = list())

參數

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/verb-expand.R

相關用法


注:本文由純淨天空篩選整理自Hadley Wickham等大神的英文原創作品 Complete a SQL table with missing combinations of data。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。