This page explains you everything there is to know about accessing metadata from PhyloData.
Every experiment has a bunch of metadata associated with it. You can explore almost everything about an experiment by looking at its page on this website. However, you can also access the metadata using the PhyloData Java library.
Every loadExperiment
methods return a PaperWithExperiment
object. It has the following structure:
public class PaperWithExperiment {
Paper getPaper();
Experiment getExperiment();
List<File> getFiles();
List<Sample> getSamples();
Object getTrees();
List<EvolutionaryModelComponent> getEvolutionaryModel();
Metadata getMetadata();
}
As you can see, the structure closesly matches the experiment pages on the website.
PaperWithExperiment experiment = new ExperimentLoader(
"munro-2019-climate-6tvf", 1
).load();
System.out.println(experiment.getPaper().getTitle());
System.out.println(experiment.getPaper().getYear());
System.out.println(experiment.getPaper().getAbstract());
System.out.println(experiment.getPaper().getAuthors());
System.out.println(experiment.getPaper().getDoi());
System.out.println(experiment.getPaper().getBibtex());
PaperWithExperiment experiment = new ExperimentLoader(
"munro-2019-climate-6tvf", 1
).load();
System.out.println(experiment.getExperiment().getType());
System.out.println(experiment.getExperiment().getHumanReadableId());
System.out.println(experiment.getExperiment().getUploadDate());
System.out.println(experiment.getExperiment().getVersion());
PaperWithExperiment experiment = new ExperimentLoader(
"munro-2019-climate-6tvf", 1
).load();
for (File file : experiment.getAllFiles()) {
System.out.println(file.getName());
System.out.println(file.getType());
System.out.println(file.getLocalPath());
System.out.println(file.getSizeBytes());
System.out.println(file.getMd5());
System.out.println(file.getIsPreview());
}
getAllFiles
returns all files, including preview files and files that haven’t been downloaded. getFiles
and alike only return the files that have been downloaded and respect the preview preferences.
PaperWithExperiment experiment = new ExperimentLoader(
"munro-2019-climate-6tvf", 1
).load();
for (Sample sample : experiment.getSamples()) {
System.out.println(sample.getSampleId());
System.out.println(sample.getScientificName());
System.out.println(sample.getClassification());
System.out.println(sample.getSampleData());
}
PaperWithExperiment experiment = new ExperimentLoader(
"munro-2019-climate-6tvf", 1
).load();
System.out.println(experiment.getTrees().getNumberOfTrees());
System.out.println(experiment.getTrees().getNumberOfTips());
System.out.println(experiment.getTrees().getRooted());
System.out.println(experiment.getTrees().getUltrametric());
System.out.println(experiment.getTrees().getAverageRootAge());
PaperWithExperiment experiment = new ExperimentLoader(
"munro-2019-climate-6tvf", 1
).load();
for (EvolutionaryModelComponent model : experiment.getEvolutionaryModel()) {
System.out.println(model.getName());
System.out.println(model.getType());
}