Overview
This page provides an overview of the API along with examples.
Make Predictions
The quantum order effect model (QOEM) generates predictions for six conditions:
Order 1
- Pr(disease)
- Pr(disease | lab test)
- Pr(disease | lab test, medical history)
Order 2
- Pr(disease)
- Pr(disease | medical history)
- Pr(disease | medical history, lab test)
using QuantumOrderEffectModels
Ψ = @. √([.35,.35,.15,.15])
γₕ = 2
γₗ = .5
σ = .05
model = QOEM(;Ψ, γₕ, γₗ, σ)
predict(model)
6-element Vector{Float64}:
0.7
0.8704446873428505
0.0808394998623826
0.7
0.4261570034458711
0.22271494542165207
Simulate Model
The code block below demonstrates how to generate simulated data from the model using rand
. In the example, we will generate 100 simulated trials for each condition.
using QuantumOrderEffectModels
Ψ = @. √([.35,.35,.15,.15])
γₕ = 2
γₗ = .5
σ = .05
n_trials = 100
model = QOEM(;Ψ, γₕ, γₗ, σ)
data = rand(model, n_trials)
100-element Vector{Vector{Float64}}:
[0.6969840265225893, 0.7908114169929276, 0.1575520161378288, 0.722232205409635, 0.4160820051025707, 0.20444780221952702]
[0.6410537639776402, 0.8798497083381326, 0.031518957011589376, 0.7573847169933745, 0.44696983503011056, 0.2547152905284443]
[0.785038839864378, 0.9402585167030124, 0.1831792585044017, 0.637865206282481, 0.3362696484976867, 0.3347666511626166]
[0.7844226319286141, 0.8744261381042409, 0.21934126515799765, 0.7660622678128768, 0.4052967443737887, 0.18285950788459568]
[0.752950962175171, 0.8432457294739321, 0.05377286922589095, 0.6028804195988193, 0.42739717974010666, 0.1700726457159795]
[0.7619711476312262, 0.83210416571646, 0.11427296517329569, 0.6341252576911941, 0.4020309538303397, 0.20877857018950252]
[0.6948069485749911, 0.9547994242258292, 0.08054578588792186, 0.6364927839112722, 0.4121076793023817, 0.2249926591796789]
[0.5465880750395078, 0.7548744350752424, 0.11009471783750656, 0.7341155447158816, 0.40945355825670987, 0.28676336128881286]
[0.681192026937423, 0.9184115727965951, 0.05547916867649056, 0.6053710754710024, 0.4545484104925343, 0.30332786643287746]
[0.6256805181397687, 0.9353027315810917, 0.02571951068127649, 0.7589543409839712, 0.4405059964922604, 0.17490892889340226]
⋮
[0.6181338126389919, 0.8999939537198849, 0.03719794898304172, 0.7405924204113108, 0.46802025278982495, 0.2445885927925807]
[0.7919254214169227, 0.9124806026165243, 0.10380082021650784, 0.6186265043005386, 0.4326413542493928, 0.2336539045062989]
[0.765878864859999, 0.8509224730278304, 0.18536149167911228, 0.7048241485694803, 0.39752537334815136, 0.16196687777916202]
[0.6456717035786202, 0.8190584042572798, 0.023833176824488957, 0.6341973032773721, 0.4276270188081385, 0.21704795909589183]
[0.7123265450548997, 0.9484123911955804, 0.01789795311314375, 0.6565898016646652, 0.4758775726784944, 0.21465716629960815]
[0.7102368071480283, 0.8908976049601881, 0.0955131692573532, 0.7714421473533686, 0.4709605323676332, 0.290565833468767]
[0.7439247193440839, 0.8582527039916756, 0.08758314840638763, 0.7022230835905429, 0.3642276135967732, 0.1928956169278704]
[0.6625259682480378, 0.8124661625346682, 0.1731475852963141, 0.6885280475519356, 0.37091621458363305, 0.1331404479458611]
[0.6673994023369789, 0.8936919542288875, 0.045805061765214795, 0.5814734754367675, 0.5105231851384265, 0.20922564898092103]
Evaluate Log Likelihood
The log likelihood of data can be evaluated using logpdf
. In the code block below, we generate simulated data and evaluate the logpdf:
using QuantumOrderEffectModels
Ψ = @. √([.35,.35,.15,.15])
γₕ = 2
γₗ = .5
σ = .05
n_trials = 100
model = QOEM(;Ψ, γₕ, γₗ, σ)
data = rand(model, n_trials)
logpdf(model, data)
975.0681052721292