48 const std::vector<core::MortalityItem> &deaths);
64 template <std::
floating_po
int TYPE>
65 static std::vector<TYPE> create_cdf(std::vector<TYPE> &frequency) {
66 auto sum = std::accumulate(std::cbegin(frequency), std::cend(frequency), 0.0f);
67 auto pdf = std::vector<float>(frequency.size());
69 std::transform(std::cbegin(frequency), std::cend(frequency), pdf.begin(),
70 [&sum](
auto &v) { return v / sum; });
72 auto prob =
static_cast<TYPE
>(1.0 / (pdf.size() - 1));
73 std::fill(pdf.begin(), pdf.end(), prob);
76 auto cdf = std::vector<float>(pdf.size());
78 for (
size_t i = 1; i < pdf.size(); i++) {
79 cdf[i] = cdf[i - 1] + pdf[i];
Defines the age and gender lookup table data type.
Definition: gender_table.h:120
Burden of diseases (BoD) analysis module definition data type.
Definition: analysis_definition.h:11
Defines the disease measure table data type.
Definition: disease_table.h:51
Defines the population life table data type.
Definition: life_table.h:29
LMS (lambda-mu-sigma) model definition data type.
Definition: lms_definition.h:26
Defines the relative risk factors lookup data type.
Definition: relative_risk.h:15
Defines the Health-GPS back-end data store interface for all implementations.
Definition: datastore.h:13
Back-end data stop POCO types converter to Health-GPS types.
Definition: converter.h:33
static core::Gender to_gender(const std::string name)
Definition: converter.cpp:9
static LmsDefinition to_lms_definition(const std::vector< core::LmsDataRow > &dataset)
Definition: converter.cpp:177
static RelativeRiskLookup to_relative_risk_lookup(const core::RelativeRiskEntity &entity)
Definition: converter.cpp:58
static AnalysisDefinition to_analysis_definition(const core::DiseaseAnalysisEntity &entity)
Definition: converter.cpp:109
static FloatAgeGenderTable to_relative_risk_table(const core::RelativeRiskEntity &entity)
Definition: converter.cpp:31
static DiseaseParameter to_disease_parameter(const core::CancerParameterEntity &entity)
Definition: converter.cpp:156
static LifeTable to_life_table(const std::vector< core::BirthItem > &births, const std::vector< core::MortalityItem > &deaths)
Definition: converter.cpp:141
static DiseaseTable to_disease_table(const core::DiseaseEntity &entity)
Definition: converter.cpp:21
Gender
Enumerates gender types.
Definition: forward_type.h:18
RelativeRisk create_relative_risk(const RelativeRiskInfo &info)
Creates the relative risk definition for a disease.
Definition: converter.cpp:79
Top-level namespace for Health-GPS C++ API.
Definition: analysis_definition.h:8
Defines the cancer disease parameters data type.
Definition: disease_definition.h:14
Defines the relative risk factors data type.
Definition: relative_risk.h:79
Cancer disease parameters per country data structure.
Definition: disease.h:88
Burden of Diseases (BoD) analysis for a country data structure.
Definition: analysis.h:25
Disease full definition data structure.
Definition: disease.h:53
Disease information structure.
Definition: disease.h:13
Diseases relative risk effect table data structure.
Definition: disease.h:72
Collate the information for retrieving relative risks for a disease.
Definition: converter.h:18
const ModelInput & inputs
The model inputs.
Definition: converter.h:26
core::Datastore & manager
Back-end data store manager instance.
Definition: converter.h:23
std::vector< MappingEntry > & risk_factors
The risk factor model mappings.
Definition: converter.h:29
const core::DiseaseInfo & disease
The target disease information.
Definition: converter.h:20