This is a major feature release focused on expanding dbparser's capabilities into real-world pharmacovigilance and drug-drug interaction analysis. The integration engine has been formalized around a "Hub and Spoke" model, with DrugBank acting as the central hub.
-
New Parser:
parseOnSIDES()- Parses the relational CSV files from the OnSIDES database, a modern resource for adverse drug events extracted from FDA labels.
- Returns a
dvobjectcontaining the 7 core relational tables and an optionalhigh_confidencesummary table.
-
New Parser:
parseTWOSIDES()- Parses the TWOSIDES database, the leading resource for drug-drug interaction (DDI) adverse event signals from real-world data.
- Returns a
dvobjectcontaining thedrug_drug_interactionstable. - The parser correctly handles known column name misspellings in the source data (e.g.,
drug_1_rxnorn_id).
-
New Integration Function:
merge_drugbank_onsides()- Merges a DrugBank
dvobjectwith an OnSIDESdvobject. - Automatically creates an enriched
integrated_datalist, linking OnSIDES data to DrugBank IDs via RxNorm CUIs. - The function is chainable, meaning it can be used in a
%>%pipeline after other merge functions.
- Merges a DrugBank
-
New Integration Function:
merge_drugbank_twosides()- Merges a DrugBank
dvobjectwith a TWOSIDESdvobject. - Performs a "double join" to enrich both drugs in an interaction pair with their DrugBank IDs and names.
- Uses a robust "union" logic to keep interactions even if only one of the two drugs is present in the input DrugBank object.
- The function is also chainable.
- Merges a DrugBank
-
Subset a DrugBank dvobject function:
subset_drugbank_dvobject()- Intelligently filters a DrugBank dvobject to retain only the data associated with a specified list of drugbank_ids. It correctly handles the deep,
multi-level nested structure of the entire object, including the complex relationships within the
cettlist.
- Intelligently filters a DrugBank dvobject to retain only the data associated with a specified list of drugbank_ids. It correctly handles the deep,
multi-level nested structure of the entire object, including the complex relationships within the
-
Subset an OnSIDES dvobject function:
subset_onsides_dvobject()- Intelligently filters an OnSIDES dvobject by cascading filters through the relational tables, ensuring the final subset is self-consistent.
-
Adding metadata to existing
dvobjectobjects using function:add_database_info() -
Major enhancements to function
show_dvobject_metadata()- Displays information about passed dbobject object including basic info, database metadata, and all data.frames contained within nested lists.
-
Run
vignette("dbparser_2_2", package = "dbparser")for more info
- New Vignette: "Integrated Pharmacovigilance"
- A comprehensive new tutorial demonstrating a full, three-way integration of DrugBank, OnSIDES, and TWOSIDES.
- Includes a complete scientific case study analyzing single-drug vs. polypharmacy risks.
- Introduces a reproducible example workflow using a pre-computed RDS data object hosted externally to keep the package lightweight.
- Run
vignette("drugbank_nside", package = "dbparser")for more info
- Updated existing vignette and package Readme with enhanced examples
- Several minor fixes are done
- Updated unit tests with latest DrugBank DB info v 5.1.12
- Fixed "Drug Targets has two
drugbank_idcolumns" bug (#163)
- Replaced "-" with "_" in tibbles column names (#111)
- Renamed "primary_key" to "drugbank_id" in parsed drugs "general_information" tibble (#111)
- Replaced "parent_key" keywords in different tibbles column names with original parent name (#111)
- Updated Vignette to use interactive canvasXpress package plots
- Fixed output references (#147)
- Updated
parseDrugBanKparameters default values (#146) - Fixed package documentation references (#144)
- Fixed CRAN error on some of linux info (#145)
- Deprecated saving parsed data into given database (#140)
- Deprecated saving parsed data into a csv file (#140)
- Deprecated old structure public methods (#141)
- Updated minimum R required version to 3.5 (#143)
- Introduced new methods for paring DrugBank DB and returning dvobject (#141)
- Updated unit tests to work with new data structure (#141)
- Removed RMariaDB dependency (#129)
- Fix pkgdown configuration for reference (#136)
- Introduce progress bar in parser functions
drugs,cettandReferencesParsers
attachmentsparsers for drugs and CETTdrug_pharmacologyparser- Rename
drugs_booksparser todrugs_textbooks - Rename
drug_allparser torun_all_parsers - Rename
drugparser todrug_general_information
- Add returned parsed data structure
- Explain the returned data functionality as a whole and for each elements
- Point out to related/similar parsers
For those who thinking to contribute in dbparser, now parsers are implemented
as R6 classes.
- Update database saver functions to accommodate new DrugBank data size.
- Enhance many memory and performance issues for many parsers.
- Change the drug classification representations to extract more useful information.
- Change some drug tibbles features names
- Size columns in
drugsmain table is no longer exist, will do full statistical analysis later using dvminer package.
- Fix column size issue while importing into SQL Server (#91)
- Fix dbparser and upcoming CRAN release of dplyr issues (#92)
- Fix CRAN Notes (#93)
- Fix package documentation and site references
- Functions have been splitted into 6 categories DrugBank Database Loading, Carriers, Targets, Transporters, Drug and common parsers. All function names are changed to reflect the function family. The related documentation is also updated (#66, #75).
dbparsernow can cite the package by callingcitation("dbparser")(#71).- Adding more user friendly error messages (#76, #81).
- User can now pass
DBIdatabase connection to parser functions as an argument beside SQLite and MariaDB (#87).
open_db,open_mdbandclose_dbfunctions are no longer supported. Creating and maintaining database is completely user responsibility and the database connection can be passed to parser functions (#87).
- New tutorials for how to use
dbparserhave been created (#78, #79). - Contribution guide has been added.
- Code of conduct has been added (#70).
- Enhance function reference documentation to include section for each type (#68).
- Fix save drugs tibbles as csv several issues.
- Update SQL database tibbles saver functions.
- Update SQL database saver functions documentations.
- Support MariaDB and introduce related functionalities.
- Fix CRAN errors and notes
- Fix zip file location issue
- Replace Secondary and third keys columns from drug framework with other_keys column that contains any other keys that might exist in addition to the primary key
- Add average-mass, monoisotopic-mass and calculated-properties parsers.
- Support saving parsed drugs related parsed database as csv
- Fix CRAN Note
- Improve documentation
- Refactor unused functions
- Remove Count features from drug data set
- Fix several typos in documentation and code
- Fix consistency issue of CLASS of tibbles Returned by dbparser
- Check if DrugBank database exist before parsing
- Add support for international_brands and salts elements
- Properly rename some features to have clear names
- Reduce datasets size by getting unique rows only
- Support reading zip file containing DrugBank xml database
- Initial release that contains core functionalities