這些是 dplyr mutate()
和 transmute()
泛型的方法。它們被轉換為 SQL 查詢的 SELECT
子句中的計算表達式。
用法
# S3 method for tbl_lazy
mutate(
.data,
...,
.by = NULL,
.keep = c("all", "used", "unused", "none"),
.before = NULL,
.after = NULL
)
參數
- .data
-
由數據庫查詢支持的惰性 DataFrame 。
- ...
-
<
data-masking
> 變量,或變量的函數。使用desc()
按降序對變量進行排序。 - .by
-
<
tidy-select
> (可選)僅針對此操作選擇要分組的列,作為group_by()
的替代方案。有關詳細信息和示例,請參閱?dplyr_by。 - .keep
-
控製
.data
中的哪些列保留在輸出中。始終保留分組列和...
創建的列。-
"all"
保留.data
中的所有列。這是默認設置。 -
"used"
僅保留...
中使用的列以創建新列。這對於檢查您的工作非常有用,因為它並排顯示輸入和輸出。 -
"unused"
僅保留...
中未使用的列以創建新列。如果您生成新列,但不再需要用於生成它們的列,這非常有用。 -
"none"
不保留.data
中的任何額外列。僅保留...
創建的分組變量和列。
-
- .before, .after
-
<
tidy-select
> (可選)控製新列應出現的位置(默認設置是添加到右側)。有關更多詳細信息,請參閱relocate()
。
值
另一個tbl_lazy
。使用show_query()
查看生成的查詢,並使用collect()
執行查詢並將數據返回到R。
例子
library(dplyr, warn.conflicts = FALSE)
db <- memdb_frame(x = 1:5, y = 5:1)
db %>%
mutate(a = (x + y) / 2, b = sqrt(x^2L + y^2L)) %>%
show_query()
#> <SQL>
#> SELECT *, (`x` + `y`) / 2.0 AS `a`, SQRT((POWER(`x`, 2)) + POWER(`y`, 2)) AS `b`
#> FROM `dbplyr_019`
# dbplyr automatically creates subqueries as needed
db %>%
mutate(x1 = x + 1, x2 = x1 * 2) %>%
show_query()
#> <SQL>
#> SELECT *, `x1` * 2.0 AS `x2`
#> FROM (
#> SELECT *, `x` + 1.0 AS `x1`
#> FROM `dbplyr_019`
#> )
相關用法
- R dbplyr memdb_frame 在臨時內存數據庫中創建數據庫表。
- 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 collapse.tbl_sql 計算查詢的結果
- R dbplyr sql_expr 從 R 表達式生成 SQL
- R dbplyr get_returned_rows 提取並檢查返回的行
- R dbplyr dbplyr_uncount “計數”數據庫表
- R dbplyr count.tbl_lazy 按組計數觀察值
- R dbplyr backend-odbc 後端:ODBC
- R dbplyr head.tbl_lazy 對第一行進行子集化
- R dbplyr db-quote SQL 轉義/引用泛型
- R dbplyr copy_inline 在 dbplyr 查詢中使用本地 DataFrame
- 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
- R dbplyr backend-hana 後端:SAP HANA
注:本文由純淨天空篩選整理自Hadley Wickham等大神的英文原創作品 Create, modify, and delete columns。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。