admixturegraph: Admixture Graph Manipulation and Fitting

Implements tools for building and visualising admixture graphs and for extracting equations from them. These equations can be compared to f- statistics obtained from data to test the consistency of a graph against data -- for example by comparing the sign of f_4-statistics with the signs predicted by the graph -- and graph parameters (edge lengths and admixture proportions) can be fitted to observed statistics.

AuthorThomas Mailund [cre, aut], Kalle Leppala [aut], Svend Nielsen [aut]
Date of publication2016-12-13 15:33:28
MaintainerThomas Mailund <mailund@birc.au.dk>
LicenseGPL-2
Version1.0.2
https://github.com/mailund/admixture_graph

View on CRAN

Man pages

add_a_leaf: Adds a new leaf to a graph.

add_an_admixture: Adds a new admixture event to a graph.

add_an_admixture2: Adds a new admixture event to a graph.

add_graph_f4: Evalutes the f_4 statistics for all rows in a data frame and...

add_graph_f4_sign: Extend a data frame with f_4 statistics predicted by a graph.

admix_props: Specify the proportions in an admixture event.

admixture_edge: Create an admixture edge from a child to two parents.

admixturegraph-package: admixturegraph: Visualising and analysing admixture graphs.

admixture_proportions: Create the list of admixture proportions for an admixture...

agraph: Create an admixture graph object.

agraph_children: Build the child incidene matrix from an parent edge list.

agraph_parents: Build the parent incidence matrix from an edge list.

agraph_weights: Build the matrix of admixture proportions from an edge list.

all_graphs: All graphs.

all_path_overlaps: Get the list of overlaps of all paths.

all_paths: Compute all paths from one leaf to another.

bears: Statistics for populations of bears

build_edge_optimisation_matrix: Build a matrix coding the linear system of edges once the...

burn_in: Removes the first k rows from a trace.

calculate_concentration: Building a proxy concentration matrix.

canonise_expression: Used to recognize similar expressions and to possibly...

canonise_graph: Canonise graph.

coef.agraph_fit: Parameters for the fitted graph.

cost_function: The cost function fed to Nelder-Mead.

edge: Create an edge from a child to a parent.

edge_optimisation_function: More detailed edge fitting than mere cost_function.

eight_leaves_trees: Eight leaves trees.

evaluate_f4: Evaluates an f_4 statistics in a given environment.

examine_edge_optimisation_matrix: Examine the edge optimisation matrix to detect unfitted admix...

extract_admixture_proportion_parameters: Extract the admixture proportion parameter from edge...

extract_graph_parameters: Extract all the parameters a graph contains.

extract_trees: Extract trees

f2: Calculate the f_2(A, B) statistics.

f3: Calculate the f_3(A; B, C) statistics.

f4: Calculate the f_4(W, X; Y, Z) statistics.

f4stats: Make a data frame an f_4 statistics object.

fast_fit: A fast version of graph fitting.

fast_plot: Fast version of graph plotting.

filter_on_leaves: Filter data so all W, X, Y and Z are leaves in the graph.

fit_graph: Fit the graph parameters to a data set.

fit_graph_list: Fit lots of graphs to data.

fit_permutations_and_graphs: Fit lots of graphs to data.

fitted.agraph_fit: Predicted f statistics for the fitted graph.

five_leaves_graphs: Five leaves graphs.

format_path: Create a path data frame from a list of nodes.

four_leaves_graphs: Four leaves graphs.

get_graph_f4_sign: Extracts the sign for the f_4 statistics predicted by the...

graph_environment: Build an environment in which f statistics can be evaluated.

graphs_2_0: Admixture graphs of 2 leaves and 0 admixture events...

graphs_3_0: Admixture graphs of 3 leaves and 0 admixture events...

graphs_3_1: Admixture graphs of 3 leaves and 1 admixture event compressed...

graphs_4_0: Admixture graphs of 4 leaves and 0 admixture events...

graphs_4_1: Admixture graphs of 4 leaves and 1 admixture event compressed...

graphs_4_2: Admixture graphs of 4 leaves and 2 admixture events...

graphs_5_0: Admixture graphs of 5 leaves and 0 admixture events...

graphs_5_1: Admixture graphs of 5 leaves and 1 admixture event compressed...

graphs_5_2: Admixture graphs of 5 leaves and 2 admixture events...

graphs_6_0: Admixture graphs of 6 leaves and 0 admixture events...

graphs_6_1: Admixture graphs of 6 leaves and 1 admixture event compressed...

graphs_6_2: Admixture graphs of 6 leaves and 2 admixture events...

graphs_7_0: Admixture graphs of 7 leaves and 0 admixture events...

graphs_7_1: Admixture graphs of 7 leaves and 1 admixture event compressed...

graphs_8_0: Admixture graphs of 8 leaves and 0 admixture events...

graph_to_vector: Graph to vector.

is_descendant_of: Is descendant of.

is_negative: All overlaps are either empty or have a negative weight.

is_positive: All overlaps are either empty or have a positive weight.

is_unknown: Overlapping edges have both positive and negative...

is_zero: All overlaps are empty.

log_likelihood: Calculate (essentially) the log likelihood of a graph with...

log_sum_of_logs: Computes the log of a sum of numbers all given in log-space.

make_an_outgroup: Make an outgroup.

make_mcmc_model: Collect the information about a graph and a data set needed...

make_permutations: List of permutations.

model_bayes_factor_n: Computes the Bayes factor between two models from samples...

model_likelihood: Computes the likelihood of a model from samples from its...

model_likelihood_n: Computes the likelihood of a model from samples from its...

mynonneg: Non negative least square solution.

no_admixture_events: Get the number of admixture events in a graph.

no_admixture_events.agraph: Get the number of admixture events in a graph.

no_admixture_events.agraph_fit: Get the number of admixture events in a fitted graph.

no_admixture_events.agraph_fit_list: Get the number of admixture events in a list of fitted graph.

no_poor_fits: Get the number of tests in the fit where the predictions fall...

no_poor_fits.agraph_fit: Get the number of tests in the fit where the predictions fall...

no_poor_fits.agraph_fit_list: Get the number of tests in the fit where the predictions fall...

overlaps_sign: Get the sign of overlapping paths.

parent_edges: Create the list of edges for an admixture graph.

path_overlap: Collect the postive and negative overlap between two paths.

plot.agraph: Plot an admixture graph.

plot.agraph_fit: Plot the fit of a graph to data.

plot.f4stats: Plot the fit of a graph to data.

plot_fit_1: A plot of the cost function or number of fitted statistics.

plot_fit_2: A contour plot of the cost function.

poor_fits: Get the tests in the fit where the predictions fall outside...

poor_fits.agraph_fit: Get the tests in the fit where the predictions fall outside...

poor_fits.agraph_fit_list: Get the tests in the fit where the predictions fall outside...

print.agraph_fit: Print function for the fitted graph.

project_to_population: Map sample names to population names.

remove_duplicates: Remove duplicate graphs from a list.

rename_nodes: Rename nodes.

residuals.agraph_fit: Errors of prediction in the fitted graph

run_metropolis_hasting: Run a Metropolis-Hasting MCMC to sample graph parameters.

seven_leaves_graphs: Seven leaves graphs.

seven_leaves_trees: Seven leaves trees.

sf2: Calculate the f_2(A, B) statistics.

sf3: Calculate the f_3(A; B, C) statistics.

sf4: Calculate the f_4(W, X; Y, Z) statistics.

six_leaves_graphs: Six leaves graphs.

split_population: Reverse a projection of samples to populations.

split_population.agraph_fit: Reverse a projection of samples to populations.

split_population.data.frame: Reverse a projection of samples to populations.

summary.agraph_fit: Summary for the fitted graph.

sum_of_squared_errors: Get the sum of squared errors for a fitted graph.

sum_of_squared_errors.agraph_fit: Get the sum of squared errors for a fitted graph.

sum_of_squared_errors.agraph_fit_list: Get the sum of squared errors for a list of fitted graph.

thinning: Thins out an MCMC trace.

vector_to_graph: Vector to graph.

Files in this package

admixturegraph
admixturegraph/inst
admixturegraph/inst/doc
admixturegraph/inst/doc/admixturegraph.html
admixturegraph/inst/doc/admixturegraph.Rmd
admixturegraph/inst/doc/admixturegraph.R
admixturegraph/tests
admixturegraph/tests/testthat.R
admixturegraph/tests/testthat
admixturegraph/tests/testthat/test_path_overlaps.R
admixturegraph/tests/testthat/test_f_statistics.R
admixturegraph/tests/testthat/test_graph_construction.R
admixturegraph/tests/testthat/test_plots.R
admixturegraph/tests/testthat/test_paths.R
admixturegraph/tests/testthat/test_signs.R
admixturegraph/NAMESPACE
admixturegraph/data
admixturegraph/data/graphs_5_0.RData
admixturegraph/data/graphs_7_0.RData
admixturegraph/data/graphs_8_0.RData
admixturegraph/data/graphs_5_2.RData
admixturegraph/data/graphs_3_1.RData
admixturegraph/data/bears.RData
admixturegraph/data/graphs_3_0.RData
admixturegraph/data/graphs_4_1.RData
admixturegraph/data/graphs_7_1.RData
admixturegraph/data/graphs_6_2.RData
admixturegraph/data/datalist
admixturegraph/data/graphs_4_2.RData
admixturegraph/data/graphs_5_1.RData
admixturegraph/data/graphs_2_0.RData
admixturegraph/data/graphs_6_1.RData
admixturegraph/data/graphs_4_0.RData
admixturegraph/data/graphs_6_0.RData
admixturegraph/R
admixturegraph/R/symbolic-f-statistics.R admixturegraph/R/evaluate-f-statistics.R admixturegraph/R/signs.R admixturegraph/R/summary-statistics.R admixturegraph/R/plot.R admixturegraph/R/project_and_split.R admixturegraph/R/filter.R admixturegraph/R/data.R admixturegraph/R/f4_plotting.R admixturegraph/R/fitting.R admixturegraph/R/paths.R admixturegraph/R/agraph.R admixturegraph/R/admixture_graph.R admixturegraph/R/fitted_plotting.R admixturegraph/R/overlaps.R admixturegraph/R/propose.R admixturegraph/R/mcmc.R admixturegraph/R/f-statistics.R
admixturegraph/vignettes
admixturegraph/vignettes/bibliography.bib
admixturegraph/vignettes/admixturegraph.md
admixturegraph/vignettes/admixturegraph.Rmd
admixturegraph/vignettes/admixturegraph_files
admixturegraph/vignettes/admixturegraph_files/figure-html
admixturegraph/vignettes/admixturegraph_files/figure-html/new_leaves-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-1-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-19-4.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-14-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/new_admixtures-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-12-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-4-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/new_root-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-9-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-19-3.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-19-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-10-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-6-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/bears_graph-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-18-2.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-15-2.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-3-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-7-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-11-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-8-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-15-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-18-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-13-1.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-19-2.png
admixturegraph/vignettes/admixturegraph_files/figure-html/unnamed-chunk-5-1.png
admixturegraph/vignettes/admixturegraph_files/figure-latex
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-11-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/bears_graph-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-15-2.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-19-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-7-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-6-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-18-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-4-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-1-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-12-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/new_admixtures-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-18-2.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-3-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-19-4.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-9-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-5-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/new_root-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/new_leaves-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-14-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-19-2.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-19-3.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-13-1.pdf
admixturegraph/vignettes/admixturegraph_files/figure-latex/unnamed-chunk-15-1.pdf
admixturegraph/README.md
admixturegraph/MD5
admixturegraph/build
admixturegraph/build/vignette.rds
admixturegraph/DESCRIPTION
admixturegraph/man
admixturegraph/man/seven_leaves_trees.Rd admixturegraph/man/path_overlap.Rd admixturegraph/man/no_admixture_events.agraph_fit_list.Rd admixturegraph/man/log_likelihood.Rd admixturegraph/man/agraph_children.Rd admixturegraph/man/project_to_population.Rd admixturegraph/man/thinning.Rd admixturegraph/man/f2.Rd admixturegraph/man/sum_of_squared_errors.agraph_fit.Rd admixturegraph/man/add_an_admixture2.Rd admixturegraph/man/sf2.Rd admixturegraph/man/plot_fit_2.Rd admixturegraph/man/log_sum_of_logs.Rd admixturegraph/man/vector_to_graph.Rd admixturegraph/man/graphs_3_0.Rd admixturegraph/man/graphs_6_0.Rd admixturegraph/man/graphs_6_1.Rd admixturegraph/man/fast_plot.Rd admixturegraph/man/graphs_5_2.Rd admixturegraph/man/graphs_4_0.Rd admixturegraph/man/poor_fits.agraph_fit.Rd admixturegraph/man/poor_fits.Rd admixturegraph/man/coef.agraph_fit.Rd admixturegraph/man/model_bayes_factor_n.Rd admixturegraph/man/edge_optimisation_function.Rd admixturegraph/man/six_leaves_graphs.Rd admixturegraph/man/graphs_3_1.Rd admixturegraph/man/f4stats.Rd admixturegraph/man/plot_fit_1.Rd admixturegraph/man/graphs_8_0.Rd admixturegraph/man/graphs_4_1.Rd admixturegraph/man/remove_duplicates.Rd admixturegraph/man/split_population.agraph_fit.Rd admixturegraph/man/is_zero.Rd admixturegraph/man/plot.f4stats.Rd admixturegraph/man/no_poor_fits.Rd admixturegraph/man/sf3.Rd admixturegraph/man/make_permutations.Rd admixturegraph/man/all_paths.Rd admixturegraph/man/agraph_parents.Rd admixturegraph/man/all_graphs.Rd admixturegraph/man/bears.Rd admixturegraph/man/filter_on_leaves.Rd admixturegraph/man/admixturegraph-package.Rd admixturegraph/man/canonise_expression.Rd admixturegraph/man/agraph.Rd admixturegraph/man/four_leaves_graphs.Rd admixturegraph/man/seven_leaves_graphs.Rd admixturegraph/man/canonise_graph.Rd admixturegraph/man/get_graph_f4_sign.Rd admixturegraph/man/examine_edge_optimisation_matrix.Rd admixturegraph/man/admixture_proportions.Rd admixturegraph/man/add_graph_f4.Rd admixturegraph/man/no_admixture_events.agraph.Rd admixturegraph/man/residuals.agraph_fit.Rd admixturegraph/man/make_mcmc_model.Rd admixturegraph/man/edge.Rd admixturegraph/man/plot.agraph.Rd admixturegraph/man/cost_function.Rd admixturegraph/man/graphs_6_2.Rd admixturegraph/man/poor_fits.agraph_fit_list.Rd admixturegraph/man/graphs_5_1.Rd admixturegraph/man/fit_permutations_and_graphs.Rd admixturegraph/man/sf4.Rd admixturegraph/man/graphs_7_0.Rd admixturegraph/man/overlaps_sign.Rd admixturegraph/man/graphs_5_0.Rd admixturegraph/man/f4.Rd admixturegraph/man/add_graph_f4_sign.Rd admixturegraph/man/model_likelihood.Rd admixturegraph/man/graphs_2_0.Rd admixturegraph/man/is_negative.Rd admixturegraph/man/evaluate_f4.Rd admixturegraph/man/no_poor_fits.agraph_fit.Rd admixturegraph/man/sum_of_squared_errors.Rd admixturegraph/man/mynonneg.Rd admixturegraph/man/build_edge_optimisation_matrix.Rd admixturegraph/man/eight_leaves_trees.Rd admixturegraph/man/graphs_7_1.Rd admixturegraph/man/rename_nodes.Rd admixturegraph/man/is_descendant_of.Rd admixturegraph/man/fast_fit.Rd admixturegraph/man/no_admixture_events.Rd admixturegraph/man/sum_of_squared_errors.agraph_fit_list.Rd admixturegraph/man/run_metropolis_hasting.Rd admixturegraph/man/no_admixture_events.agraph_fit.Rd admixturegraph/man/is_positive.Rd admixturegraph/man/five_leaves_graphs.Rd admixturegraph/man/agraph_weights.Rd admixturegraph/man/summary.agraph_fit.Rd admixturegraph/man/all_path_overlaps.Rd admixturegraph/man/format_path.Rd admixturegraph/man/model_likelihood_n.Rd admixturegraph/man/print.agraph_fit.Rd admixturegraph/man/is_unknown.Rd admixturegraph/man/f3.Rd admixturegraph/man/make_an_outgroup.Rd admixturegraph/man/graph_to_vector.Rd admixturegraph/man/calculate_concentration.Rd admixturegraph/man/graphs_4_2.Rd admixturegraph/man/extract_admixture_proportion_parameters.Rd admixturegraph/man/fit_graph_list.Rd admixturegraph/man/split_population.data.frame.Rd admixturegraph/man/no_poor_fits.agraph_fit_list.Rd admixturegraph/man/split_population.Rd admixturegraph/man/add_a_leaf.Rd admixturegraph/man/fitted.agraph_fit.Rd admixturegraph/man/admix_props.Rd admixturegraph/man/extract_graph_parameters.Rd admixturegraph/man/add_an_admixture.Rd admixturegraph/man/burn_in.Rd admixturegraph/man/graph_environment.Rd admixturegraph/man/fit_graph.Rd admixturegraph/man/plot.agraph_fit.Rd admixturegraph/man/extract_trees.Rd admixturegraph/man/parent_edges.Rd admixturegraph/man/admixture_edge.Rd

Questions? Problems? Suggestions? or email at ian@mutexlabs.com.

All documentation is copyright its authors; we didn't write any of that.