Package: dm 1.0.11
dm: Relational Data Models
Provides tools for working with multiple related tables, stored as data frames or in a relational database. Multiple tables (data and metadata) are stored in a compound object, which can then be manipulated with a pipe-friendly syntax.
Authors:
dm_1.0.11.tar.gz
dm_1.0.11.tar.gz(r-4.5-noble)dm_1.0.11.tar.gz(r-4.4-noble)
dm_1.0.11.tgz(r-4.4-emscripten)dm_1.0.11.tgz(r-4.3-emscripten)
dm.pdf |dm.html✨
dm/json (API)
NEWS
# Install 'dm' in R: |
install.packages('dm', repos = c('https://cran.r-universe.dev', 'https://cloud.r-project.org')) |
Bug tracker:https://github.com/cynkra/dm/issues
Last updated 2 days agofrom:84f63ebea9. Checks:OK: 2. Indexed: no.
Target | Result | Date |
---|---|---|
Doc / Vignettes | OK | Nov 25 2024 |
R-4.5-linux | OK | Nov 25 2024 |
Exports:%>%anti_joinarrangeas_dmcdm_add_fkcdm_add_pkcdm_add_tblcdm_apply_filterscdm_apply_filters_to_tblcdm_check_constraintscdm_copy_tocdm_disambiguate_colscdm_drawcdm_enum_fk_candidatescdm_enum_pk_candidatescdm_filtercdm_flatten_to_tblcdm_get_all_fkscdm_get_all_pkscdm_get_available_colorscdm_get_colorscdm_get_concdm_get_filtercdm_get_fkcdm_get_pkcdm_get_referencing_tablescdm_get_srccdm_get_tablescdm_has_fkcdm_has_pkcdm_insert_zoomed_tblcdm_is_referencedcdm_join_to_tblcdm_learn_from_dbcdm_nrowcdm_nycflights13cdm_pastecdm_renamecdm_rename_tblcdm_rm_fkcdm_rm_pkcdm_rm_tblcdm_selectcdm_select_tblcdm_set_colorscdm_squash_to_tblcdm_update_zoomed_tblcdm_zoom_outcdm_zoom_to_tblcheck_cardinalitycheck_cardinality_0_1check_cardinality_0_ncheck_cardinality_1_1check_cardinality_1_ncheck_if_subsetcheck_keycheck_set_equalitycheck_subsetcollectcomputecopy_dm_tocopy_todb_schema_createdb_schema_dropdb_schema_existsdb_schema_listdecompose_tabledmdm_add_fkdm_add_pkdm_add_tbldm_add_ukdm_apply_filtersdm_apply_filters_to_tbldm_binddm_ddl_postdm_ddl_predm_deconstructdm_disambiguate_colsdm_discard_zoomeddm_dml_loaddm_drawdm_enum_fk_candidatesdm_enum_pk_candidatesdm_examine_cardinalitiesdm_examine_constraintsdm_filterdm_financialdm_financial_sqlitedm_flatten_to_tbldm_from_condm_from_srcdm_get_all_fksdm_get_all_pksdm_get_all_uksdm_get_available_colorsdm_get_colorsdm_get_condm_get_filtersdm_get_fkdm_get_pkdm_get_referencing_tablesdm_get_srcdm_get_table_descriptiondm_get_tablesdm_guidm_has_fkdm_has_pkdm_insert_zoomeddm_is_referenceddm_join_to_tbldm_mutate_tbldm_nest_tbldm_nrowdm_nycflights13dm_pack_tbldm_pastedm_pixarfilmsdm_ptypedm_renamedm_rename_tbldm_reset_table_descriptiondm_rm_fkdm_rm_pkdm_rm_tbldm_rm_ukdm_rows_appenddm_rows_deletedm_rows_insertdm_rows_patchdm_rows_truncatedm_rows_updatedm_rows_upsertdm_selectdm_select_tbldm_set_colorsdm_set_table_descriptiondm_sqldm_squash_to_tbldm_unnest_tbldm_unpack_tbldm_unwrap_tbldm_update_zoomeddm_validatedm_wrap_tbldm_zoom_toenum_fk_candidatesenum_pk_candidatesexamine_cardinalityfilterfull_joinglimpsegroup_byinner_joinis_dmjson_nestjson_nest_joinjson_packjson_pack_joinjson_unnestjson_unpackleft_joinmutatenew_dmpack_joinpull_tblrenamereunite_parent_childreunite_parent_child_from_listright_joinrows_appendrows_deleterows_insertrows_patchrows_truncaterows_updaterows_upsertselectsemi_joinseparatesql_rows_truncatesql_schema_createsql_schema_dropsql_schema_existssql_schema_listsrc_tblssummarisesummarizetbltibbletransmuteungroupunitevalidate_dm
Dependencies:backportscachemclicpp11dplyrfansifastmapgenericsglueigraphlatticelifecyclemagrittrMatrixmemoisepillarpkgconfigpurrrR6rlangstringistringrtibbletidyrtidyselectutf8vctrswithr
Getting started with dm
Rendered fromdm.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2024-11-25
Started: 2020-03-12
Copy tables to and from a database
Rendered fromhowto-dm-copy.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2024-11-25
Started: 2020-11-18
Create a dm object from a database
Rendered fromhowto-dm-db.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2024-11-25
Started: 2020-05-25
Create a dm object from data frames
Rendered fromhowto-dm-df.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2022-07-06
Started: 2020-05-25
Insert, update, or remove rows in a database
Rendered fromhowto-dm-rows.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2023-03-16
Started: 2020-11-18
Introduction to relational data models
Rendered fromhowto-dm-theory.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2023-07-21
Started: 2020-05-25
Visualizing dm objects
Rendered fromtech-dm-draw.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2022-09-20
Started: 2020-05-25
Class dm and basic operations
Rendered fromtech-dm-class.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2022-09-20
Started: 2020-05-25
Filtering in relational data models
Rendered fromtech-dm-filter.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2023-03-16
Started: 2020-05-25
Function naming logic
Rendered fromtech-dm-naming.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2023-02-11
Started: 2020-05-25
Joining in relational data models
Rendered fromtech-dm-join.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2023-03-16
Started: 2020-05-25
Manipulating individual tables
Rendered fromtech-dm-keyed.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2023-03-16
Started: 2022-07-21
Migration guide: 'cdm' -> 'dm'
Rendered fromtech-dm-cdm.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2022-07-06
Started: 2020-05-25
Model verification - keys, constraints and normalization
Rendered fromtech-dm-low-level.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2023-03-16
Started: 2020-05-25
Zooming and manipulating tables
Rendered fromtech-dm-zoom.Rmd
usingknitr::rmarkdown
on Nov 25 2024.Last update: 2023-03-16
Started: 2020-05-25
Readme and manuals
Help Manual
Help page | Topics |
---|---|
Check if column(s) can be used as keys | check_key |
Check column values for set equality | check_set_equality |
Check column values for subset | check_subset |
Copy data model to data source | copy_dm_to |
Create a schema on a database | db_schema_create |
Remove a schema from a database | db_schema_drop |
Check for existence of a schema on a database | db_schema_exists |
List schemas on a database | db_schema_list |
Decompose a table into two linked tables | decompose_table |
Data model class | as_dm dm is_dm new_dm |
Add foreign keys | dm_add_fk |
Add a primary key | dm_add_pk |
Add a unique key | dm_add_uk |
Create code to deconstruct a dm object | dm_deconstruct |
Resolve column name ambiguities | dm_disambiguate_cols |
Draw a diagram of the data model | dm_draw |
Foreign key candidates | dm_enum_fk_candidates enum_fk_candidates |
Learn about your data model | dm_examine_cardinalities |
Validate your data model | dm_examine_constraints |
Filtering | dm_filter |
Creates a dm object for the Financial data | dm_financial dm_financial_sqlite |
Flatten a part of a 'dm' into a wide table | dm_flatten_to_tbl |
Load a dm from a remote data source | dm_from_con |
Get foreign key constraints | dm_get_all_fks |
Get all primary keys of a 'dm' object | dm_get_all_pks |
Get all unique keys of a 'dm' object | dm_get_all_uks |
Get connection | dm_get_con |
Get tables | dm_get_tables |
Shiny app for defining dm objects | dm_gui |
Check for primary key | dm_has_pk |
Update tables in a 'dm' | dm_mutate_tbl |
Nest a table inside its dm | dm_nest_tbl |
Number of rows | dm_nrow |
Creates a dm object for the 'nycflights13' data | dm_nycflights13 |
dm_pack_tbl() | dm_pack_tbl |
Create R code for a dm object | dm_paste |
Creates a dm object for the 'pixarfilms' data | dm_pixarfilms |
Prototype for a dm object | dm_ptype |
Rename columns | dm_rename |
Remove foreign keys | dm_rm_fk |
Remove a primary key | dm_rm_pk |
Remove a unique key | dm_rm_uk |
Select columns | dm_select |
Select and rename tables | dm_rename_tbl dm_select_tbl |
Color in database diagrams | dm_get_available_colors dm_get_colors dm_set_colors |
Add info about a dm's tables | dm_get_table_description dm_reset_table_description dm_set_table_description |
Create _DDL_ and _DML_ scripts for a 'dm' a and database connection | dm_ddl_post dm_ddl_pre dm_dml_load dm_sql |
Unnest columns from a wrapped table | dm_unnest_tbl |
Unpack columns from a wrapped table | dm_unpack_tbl |
Unwrap a single table dm | dm_unwrap_tbl |
Validator | dm_validate |
Wrap dm into a single tibble dm | dm_wrap_tbl |
Mark table for manipulation | dm_discard_zoomed dm_insert_zoomed dm_update_zoomed dm_zoomed_df dm_zoom_to zoomed_df |
'dplyr' join methods for zoomed dm objects | anti_join.dm_keyed_tbl anti_join.dm_zoomed dplyr_join full_join.dm_keyed_tbl full_join.dm_zoomed inner_join.dm_keyed_tbl inner_join.dm_zoomed left_join.dm_keyed_tbl left_join.dm_zoomed nest_join.dm_zoomed right_join.dm_keyed_tbl right_join.dm_zoomed semi_join.dm_keyed_tbl semi_join.dm_zoomed |
'dplyr' table manipulation methods for zoomed dm objects | arrange.dm_zoomed compute.dm_zoomed count.dm_zoomed distinct.dm_zoomed dplyr_table_manipulation filter.dm_zoomed group_by.dm_keyed_tbl group_by.dm_zoomed mutate.dm_zoomed pull.dm_zoomed relocate.dm_zoomed rename.dm_zoomed select.dm_zoomed slice.dm_zoomed summarise.dm_keyed_tbl summarise.dm_zoomed tally.dm_zoomed transmute.dm_zoomed ungroup.dm_zoomed |
Primary key candidate | dm_enum_pk_candidates enum_pk_candidates |
Check table relations | check_cardinality_... check_cardinality_0_1 check_cardinality_0_n check_cardinality_1_1 check_cardinality_1_n examine_cardinality |
Get a glimpse of your 'dm' object | glimpse.dm glimpse.dm_zoomed |
'utils' table manipulation methods for 'dm_zoomed' objects | head.dm_zoomed tail.dm_zoomed |
JSON nest | json_nest |
JSON nest join | json_nest_join |
JSON pack | json_pack |
JSON pack join | json_pack_join |
Unnest a JSON column | json_unnest |
Unpack a JSON column | json_unpack |
Materialize | collect.dm compute.dm materialize |
Pack Join | pack_join pack_join.dm_zoomed |
Retrieve a table | pull_tbl |
Merge two tables that are linked by a foreign key relation | reunite_parent_child reunite_parent_child_from_list |
Modifying rows for multiple tables | dm_rows_... dm_rows_append dm_rows_delete dm_rows_insert dm_rows_patch dm_rows_update dm_rows_upsert rows-dm |
'tidyr' table manipulation methods for zoomed dm objects | separate.dm_keyed_tbl separate.dm_zoomed tidyr_table_manipulation unite.dm_keyed_tbl unite.dm_zoomed |