Development Version
- Update C++11 -> C++17
- Minor fixes to package metadata
- Fixed potential memory error from iterating over the beginning/end of a
std::map. The last fix didn't work under all circumstances.
- Fixed potential memory error from iterating over the beginning/end of a
std::map
netinf()withlog-normalmodel didn't run because of an index error in the argument check forparams- Fixed memory allocation error caused by uninitialized comparison
netinf_used ceiling on integer which caused error on Solaris
netinf()got another speed-up. After the first edge, the computation time for each edge is reduced by the factor number of nodes in the network- Number of edges can now be chosen using a Vuong style test. If this
procedure should be used, a p-value is chosen at which the inference of new
edges stops. This value is specified via the new
p_value_cutoffargument tonetinf(). - This lead to the netinf output having a fourth column now, containing the p-value for each edge. The p-value is also available if a fixed number of edges is chosen.
- If no starting values are provided via the
paramsargument parameters are initialized by choosing the midpoint between the maximum possible parameter value and the minimum possible value. These values are derived using the closed form MLE of the respective parameter, derived from either the minimum possible diffusion times (assuming a diffusion 'chain', i.e.a -> b -> c -> ...) or the maximum possible diffusion times (assuming a diffusion 'fan', i.e.a -> b, a -> c, a -> d,...). n_edgescan now specify either an absolute number of edges, or a p-value cutoff in the interval(0, 1)for the Vuong test- The log normal distribution is now available as a diffusion model. With this
comes a change in the arguments for
netinf. Instead oflambda, parameters are now specified with a vector (or scalar depending on distribution)params. For exponential and rayleigh distributionsparamsis just the rate / alpha parameter. For the log-normal distributionparamsspecifies mean and variance (in that order). See thenetinf()documentation for details on specificaiton and parametrization (?netinf). - The output from
netinf()now contains information on the model, parameters and iterations as attributes. See the documentation for details. - The
policiesdataset has been updated with over 600 new policies from the SPID database (access viadata(policies)). - Inferred cascade trees can now be returned by setting
trees = TRUE.
- New function
drop_nodes()now allows to drop nodes from all cascades in a cascade object.
simulate_cascades()now supports passing of additional (isolated in the diffusion network) nodes via thenodesargument.simulate_cascades()now also supports the log-normal distribution.
- Inference of very uninformative edges (large number of edges) could lead for the software to break. Fixed now
- In
simulate_cascades()with partial cascades provided, it was possible that nodes experienced an event earlier than the last event in the partial cascade. Now, the earliest event time is the last observed event time in the partial cascade.
- C++ code is now modularized and headers are properly documented
- We made changes to the internal data structures of the netinf function, so it is much faster and memory efficient now.
netinf()now has a shiny progress bar!as.cascadeis now completely removed (see release note on version 1.1.0).- New convenience function to subset cascades by time (
subset_cascade_time) and by cascade id (subset_cascade).
- Long running functions (that call compiled code) can now be interrupted without crashing the R session.
as_cascade_long()andas_cascade_wide()handle date input correctly now.as_cascade_wide()couldn't handle data input of classdata.table.
- Use of igraph now conditional compliant with Writing R Extensions 1.1.3.1
- Fixed version number displayed in startup message
- Data format (long or wide) of
as.cascadeis not bound to the class of the data object anymore. In 1.0.0 wide format had to be a matrix and long format had to be a dataframe. This did not make much sense.as.cascadeis now deprecated and replaced by two new functionsas_cascade_longandas_cascade_wide.
- x and y axis labels in
plot.cascadewith optionlabel_nodes=FALSEwere reversed
First release