memdb_frame()
的工作方式与 tibble::tibble()
类似,但它不是在 R 中创建新的 DataFrame ,而是在 src_memdb()
中创建一个表。
用法
memdb_frame(..., .name = unique_table_name())
tbl_memdb(df, name = deparse(substitute(df)))
src_memdb()
参数
- ...
-
<
dynamic-dots
> 一组name-value 对。这些参数使用rlang::quos()
进行处理,并支持通过!!
取消引用和通过!!!
取消引用拼接。使用:=
创建以点开头的列。参数按顺序进行评估。您可以直接引用以前创建的元素或使用.data代词。要显式引用调用环境中的对象,请使用
!!
或 .env,例如!!.data
或.env$.data
用于名为.data
的对象的特殊情况。 - df
-
要复制的 DataFrame
- name, .name
-
数据库中表的名称:默认为随机名称,不太可能与现有表冲突。
例子
library(dplyr)
df <- memdb_frame(x = runif(100), y = runif(100))
df %>% arrange(x)
#> # Source: SQL [?? x 2]
#> # Database: sqlite 3.41.2 [:memory:]
#> # Ordered by: x
#> x y
#> <dbl> <dbl>
#> 1 0.0207 0.903
#> 2 0.0355 0.346
#> 3 0.0435 0.730
#> 4 0.0681 0.781
#> 5 0.0686 0.439
#> 6 0.0754 0.731
#> 7 0.0760 0.459
#> 8 0.0842 0.0304
#> 9 0.0923 0.769
#> 10 0.102 0.172
#> # ℹ more rows
df %>% arrange(x) %>% show_query()
#> <SQL>
#> SELECT *
#> FROM `dbplyr_018`
#> ORDER BY `x`
mtcars_db <- tbl_memdb(mtcars)
mtcars_db %>% group_by(cyl) %>% summarise(n = n()) %>% show_query()
#> <SQL>
#> SELECT `cyl`, COUNT(*) AS `n`
#> FROM `mtcars`
#> GROUP BY `cyl`
相关用法
- R dbplyr mutate.tbl_lazy 创建、修改和删除列
- 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 a database table in temporary in-memory database.。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。