Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
cce8232
Format code and add date parsing guard
smasongarrison Jun 2, 2026
2e10e42
data
smasongarrison Jun 5, 2026
117b8b1
fix: replace fixed-offset event parsing with level-aware sub-block pa…
smasongarrison Jun 5, 2026
1763ec8
docs: update stale fixed-offset description in readGedcom roxygen; cl…
smasongarrison Jun 5, 2026
db59b98
feat: bundle FamilySearch spec TSVs and add GEDCOM version detection
smasongarrison Jun 5, 2026
475827f
fix: guard detectGedcomVersion against NA return and descending seq e…
smasongarrison Jun 5, 2026
9b729db
feat: add GEDCOM 7.x MAP coordinate support and calendar-escape date …
smasongarrison Jun 5, 2026
1f994f9
fix: guard coordinate helpers against invalid prefix; fix French Repu…
smasongarrison Jun 5, 2026
002c78d
Update NEWS.md
smasongarrison Jun 5, 2026
7da356d
Potential fix for pull request finding
smasongarrison Jun 6, 2026
8725309
cleanup
smasongarrison Jun 6, 2026
704417a
Update helpReadGedcom.R
smasongarrison Jun 6, 2026
e74fca4
Merge pull request #153 from R-Computing-Lab/extendedgedcom
smasongarrison Jun 7, 2026
6f1a3f4
styler
smasongarrison Jun 7, 2026
445ddbc
chains
smasongarrison Jun 14, 2026
54a18cf
addparentchains
smasongarrison Jun 14, 2026
c7c4685
docs
smasongarrison Jun 14, 2026
f37a027
Update DESCRIPTION
smasongarrison Jun 14, 2026
8eb1bdb
no need to keep making warning
smasongarrison Jun 20, 2026
b45aa40
Add runmodel toggle and isPar input warning
smasongarrison Jul 5, 2026
48b1d15
rowless parents add
smasongarrison Jul 5, 2026
a442072
Merge branch 'main' into dev_main
smasongarrison Jul 5, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package: BGmisc
Title: An R Package for Extended Behavior Genetics Analysis
Version: 1.8.0
Version: 1.8.0.9
Authors@R: c(
person("S. Mason", "Garrison", , "garrissm@wfu.edu", role = c("aut", "cre"),
comment = c(ORCID = "0000-0002-4804-6003")),
Expand Down
9 changes: 9 additions & 0 deletions NAMESPACE
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
# Generated by roxygen2: do not edit by hand

export(SimPed)
export(addMaternalChain)
export(addMaternalLineFlag)
export(addParentalChain)
export(addParentalLineFlag)
export(addPaternalChain)
export(addPaternalLineFlag)
export(addPersonToPed)
export(alignPhenToMatrix)
export(buildFamilyGroups)
Expand Down Expand Up @@ -73,6 +79,9 @@ export(vech)
importFrom(Matrix,Diagonal)
importFrom(Matrix,sparseMatrix)
importFrom(data.table,as.data.table)
importFrom(igraph,V)
importFrom(igraph,distances)
importFrom(igraph,subcomponent)
importFrom(stats,na.omit)
importFrom(stats,pnorm)
importFrom(stats,qnorm)
Expand Down
9 changes: 9 additions & 0 deletions NEWS.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,17 @@
# BGmisc NEWS

## Development version

* Add building of parental chains with `addParentalChain()` and `addParentalFlag()`, so that you can easily trace maternity and paternity. This is implemented as a general function that can be used to build any parental chain, and a specific wrapper for maternal and paternal chains. The parental flag is a binary variable that indicates whether the individual is in the specified parental chain, which can be useful for filtering or grouping individuals based on their lineage.
* Fixed silent mis-scoring in `ped2com()`/`ped2add()` (and other component wrappers) when `momID`/`dadID` reference a parent ID that has no row of its own in `ped` (e.g., unrecorded founder stock, or a pedigree subset that excludes the parent's own row). Previously, `isChild_method = "partialparent"` treated such a parent as "known" (based on `momID`/`dadID` not being `NA`) while the adjacency builders correctly treated the link as absent, so the diagonal was silently understated (e.g., 0.5/0.75 instead of 1) and covariance between siblings who shared the missing parent was lost entirely. `ped2com()` now warns when this is detected. Two solutions are available in the new `repair_rowless_parents = TRUE` argument.
* \code{"rows"} (default) adds one placeholder founder row per unique missing parent ID (not one per affected child) to a working copy of \code{ped}, then restricts the returned matrix back to the original individuals via \code{keep_ids} unless \code{keep_ids} is already supplied.
* \code{"schur"} applies a Schur complement on the block-triangular RAM system -- for each missing parent, its already-known children define a rank-1 update (\code{v \%*\% t(v)}, where \code{v} is that parent's traced genetic contribution to every individual, computed from the existing RAM matrix) which is added to the relatedness matrix at the tcrossprod step. \code{"schur"} currently only supports \code{component = "additive"}.

## BGmisc 1.8.0
* Optimized gedcom reader, com2links for speed and memory usage, with a focus on large pedigrees
* Fixed bug in gedcom reader that resulted in document records being added to the final person in the pedigree
* Added more unit tests for gedcom reader and data parser
* several improvements to the GEDCOM parsing functionality, focusing on more robust and flexible event parsing, better support for different GEDCOM versions, and enhanced usability.
* Optimized sliceFamilies to be more abstract, and no longer require mtdna
* Created `.require_openmx()` to make it easier to use OpenMx functions without making OpenMx a dependency
* Smarter string ID handling for ped2id
Expand Down
Loading
Loading