@@ -2,13 +2,27 @@ _unwrap(wrapper::SemFiniteDiff) = wrapper.model
22params (wrapper:: SemFiniteDiff ) = params (wrapper. model)
33loss_terms (wrapper:: SemFiniteDiff ) = loss_terms (wrapper. model)
44
5+ replace_observed (wrapper:: SemFiniteDiff , data) =
6+ SemFiniteDiff (replace_observed (wrapper. model, data))
7+
58FiniteDiffLossWrappers = Union{LossFiniteDiff, SemLossFiniteDiff}
69
710_unwrap (term:: AbstractLoss ) = term
811_unwrap (wrapper:: FiniteDiffLossWrappers ) = wrapper. loss
912implied (wrapper:: FiniteDiffLossWrappers ) = implied (_unwrap (wrapper))
1013observed (wrapper:: FiniteDiffLossWrappers ) = observed (_unwrap (wrapper))
1114
15+ replace_observed (wrapper:: LossFiniteDiff , data) =
16+ LossFiniteDiff (replace_observed (_unwrap (wrapper), data))
17+
18+ replace_observed (wrapper:: SemLossFiniteDiff , new_observed:: SemObserved ) =
19+ SemLossFiniteDiff (replace_observed (_unwrap (wrapper), new_observed))
20+
21+ replace_observed (
22+ wrapper:: SemLossFiniteDiff ,
23+ data:: Union{AbstractMatrix, DataFrame} ,
24+ ) = SemLossFiniteDiff (replace_observed (_unwrap (wrapper), data))
25+
1226FiniteDiffWrapper (model:: AbstractSem ) = SemFiniteDiff (model)
1327FiniteDiffWrapper (loss:: AbstractLoss ) = LossFiniteDiff (loss)
1428FiniteDiffWrapper (loss:: SemLoss ) = SemLossFiniteDiff (loss)
0 commit comments