isotree 0.2.2 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (151) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -1
  3. data/LICENSE.txt +2 -2
  4. data/README.md +32 -14
  5. data/ext/isotree/ext.cpp +144 -31
  6. data/ext/isotree/extconf.rb +7 -7
  7. data/lib/isotree/isolation_forest.rb +110 -30
  8. data/lib/isotree/version.rb +1 -1
  9. data/vendor/isotree/LICENSE +1 -1
  10. data/vendor/isotree/README.md +165 -27
  11. data/vendor/isotree/include/isotree.hpp +2111 -0
  12. data/vendor/isotree/include/isotree_oop.hpp +394 -0
  13. data/vendor/isotree/inst/COPYRIGHTS +62 -0
  14. data/vendor/isotree/src/RcppExports.cpp +525 -52
  15. data/vendor/isotree/src/Rwrapper.cpp +1931 -268
  16. data/vendor/isotree/src/c_interface.cpp +953 -0
  17. data/vendor/isotree/src/crit.hpp +4232 -0
  18. data/vendor/isotree/src/dist.hpp +1886 -0
  19. data/vendor/isotree/src/exp_depth_table.hpp +134 -0
  20. data/vendor/isotree/src/extended.hpp +1444 -0
  21. data/vendor/isotree/src/external_facing_generic.hpp +399 -0
  22. data/vendor/isotree/src/fit_model.hpp +2401 -0
  23. data/vendor/isotree/src/{dealloc.cpp → headers_joined.hpp} +38 -22
  24. data/vendor/isotree/src/helpers_iforest.hpp +813 -0
  25. data/vendor/isotree/src/{impute.cpp → impute.hpp} +353 -122
  26. data/vendor/isotree/src/indexer.cpp +515 -0
  27. data/vendor/isotree/src/instantiate_template_headers.cpp +118 -0
  28. data/vendor/isotree/src/instantiate_template_headers.hpp +240 -0
  29. data/vendor/isotree/src/isoforest.hpp +1659 -0
  30. data/vendor/isotree/src/isotree.hpp +1804 -392
  31. data/vendor/isotree/src/isotree_exportable.hpp +99 -0
  32. data/vendor/isotree/src/merge_models.cpp +159 -16
  33. data/vendor/isotree/src/mult.hpp +1321 -0
  34. data/vendor/isotree/src/oop_interface.cpp +842 -0
  35. data/vendor/isotree/src/oop_interface.hpp +278 -0
  36. data/vendor/isotree/src/other_helpers.hpp +219 -0
  37. data/vendor/isotree/src/predict.hpp +1932 -0
  38. data/vendor/isotree/src/python_helpers.hpp +134 -0
  39. data/vendor/isotree/src/ref_indexer.hpp +154 -0
  40. data/vendor/isotree/src/robinmap/LICENSE +21 -0
  41. data/vendor/isotree/src/robinmap/README.md +483 -0
  42. data/vendor/isotree/src/robinmap/include/tsl/robin_growth_policy.h +406 -0
  43. data/vendor/isotree/src/robinmap/include/tsl/robin_hash.h +1620 -0
  44. data/vendor/isotree/src/robinmap/include/tsl/robin_map.h +807 -0
  45. data/vendor/isotree/src/robinmap/include/tsl/robin_set.h +660 -0
  46. data/vendor/isotree/src/serialize.cpp +4300 -139
  47. data/vendor/isotree/src/sql.cpp +141 -59
  48. data/vendor/isotree/src/subset_models.cpp +174 -0
  49. data/vendor/isotree/src/utils.hpp +3808 -0
  50. data/vendor/isotree/src/xoshiro.hpp +467 -0
  51. data/vendor/isotree/src/ziggurat.hpp +405 -0
  52. metadata +38 -104
  53. data/vendor/cereal/LICENSE +0 -24
  54. data/vendor/cereal/README.md +0 -85
  55. data/vendor/cereal/include/cereal/access.hpp +0 -351
  56. data/vendor/cereal/include/cereal/archives/adapters.hpp +0 -163
  57. data/vendor/cereal/include/cereal/archives/binary.hpp +0 -169
  58. data/vendor/cereal/include/cereal/archives/json.hpp +0 -1019
  59. data/vendor/cereal/include/cereal/archives/portable_binary.hpp +0 -334
  60. data/vendor/cereal/include/cereal/archives/xml.hpp +0 -956
  61. data/vendor/cereal/include/cereal/cereal.hpp +0 -1089
  62. data/vendor/cereal/include/cereal/details/helpers.hpp +0 -422
  63. data/vendor/cereal/include/cereal/details/polymorphic_impl.hpp +0 -796
  64. data/vendor/cereal/include/cereal/details/polymorphic_impl_fwd.hpp +0 -65
  65. data/vendor/cereal/include/cereal/details/static_object.hpp +0 -127
  66. data/vendor/cereal/include/cereal/details/traits.hpp +0 -1411
  67. data/vendor/cereal/include/cereal/details/util.hpp +0 -84
  68. data/vendor/cereal/include/cereal/external/base64.hpp +0 -134
  69. data/vendor/cereal/include/cereal/external/rapidjson/allocators.h +0 -284
  70. data/vendor/cereal/include/cereal/external/rapidjson/cursorstreamwrapper.h +0 -78
  71. data/vendor/cereal/include/cereal/external/rapidjson/document.h +0 -2652
  72. data/vendor/cereal/include/cereal/external/rapidjson/encodedstream.h +0 -299
  73. data/vendor/cereal/include/cereal/external/rapidjson/encodings.h +0 -716
  74. data/vendor/cereal/include/cereal/external/rapidjson/error/en.h +0 -74
  75. data/vendor/cereal/include/cereal/external/rapidjson/error/error.h +0 -161
  76. data/vendor/cereal/include/cereal/external/rapidjson/filereadstream.h +0 -99
  77. data/vendor/cereal/include/cereal/external/rapidjson/filewritestream.h +0 -104
  78. data/vendor/cereal/include/cereal/external/rapidjson/fwd.h +0 -151
  79. data/vendor/cereal/include/cereal/external/rapidjson/internal/biginteger.h +0 -290
  80. data/vendor/cereal/include/cereal/external/rapidjson/internal/diyfp.h +0 -271
  81. data/vendor/cereal/include/cereal/external/rapidjson/internal/dtoa.h +0 -245
  82. data/vendor/cereal/include/cereal/external/rapidjson/internal/ieee754.h +0 -78
  83. data/vendor/cereal/include/cereal/external/rapidjson/internal/itoa.h +0 -308
  84. data/vendor/cereal/include/cereal/external/rapidjson/internal/meta.h +0 -186
  85. data/vendor/cereal/include/cereal/external/rapidjson/internal/pow10.h +0 -55
  86. data/vendor/cereal/include/cereal/external/rapidjson/internal/regex.h +0 -740
  87. data/vendor/cereal/include/cereal/external/rapidjson/internal/stack.h +0 -232
  88. data/vendor/cereal/include/cereal/external/rapidjson/internal/strfunc.h +0 -69
  89. data/vendor/cereal/include/cereal/external/rapidjson/internal/strtod.h +0 -290
  90. data/vendor/cereal/include/cereal/external/rapidjson/internal/swap.h +0 -46
  91. data/vendor/cereal/include/cereal/external/rapidjson/istreamwrapper.h +0 -128
  92. data/vendor/cereal/include/cereal/external/rapidjson/memorybuffer.h +0 -70
  93. data/vendor/cereal/include/cereal/external/rapidjson/memorystream.h +0 -71
  94. data/vendor/cereal/include/cereal/external/rapidjson/msinttypes/inttypes.h +0 -316
  95. data/vendor/cereal/include/cereal/external/rapidjson/msinttypes/stdint.h +0 -300
  96. data/vendor/cereal/include/cereal/external/rapidjson/ostreamwrapper.h +0 -81
  97. data/vendor/cereal/include/cereal/external/rapidjson/pointer.h +0 -1414
  98. data/vendor/cereal/include/cereal/external/rapidjson/prettywriter.h +0 -277
  99. data/vendor/cereal/include/cereal/external/rapidjson/rapidjson.h +0 -656
  100. data/vendor/cereal/include/cereal/external/rapidjson/reader.h +0 -2230
  101. data/vendor/cereal/include/cereal/external/rapidjson/schema.h +0 -2497
  102. data/vendor/cereal/include/cereal/external/rapidjson/stream.h +0 -223
  103. data/vendor/cereal/include/cereal/external/rapidjson/stringbuffer.h +0 -121
  104. data/vendor/cereal/include/cereal/external/rapidjson/writer.h +0 -709
  105. data/vendor/cereal/include/cereal/external/rapidxml/license.txt +0 -52
  106. data/vendor/cereal/include/cereal/external/rapidxml/manual.html +0 -406
  107. data/vendor/cereal/include/cereal/external/rapidxml/rapidxml.hpp +0 -2624
  108. data/vendor/cereal/include/cereal/external/rapidxml/rapidxml_iterators.hpp +0 -175
  109. data/vendor/cereal/include/cereal/external/rapidxml/rapidxml_print.hpp +0 -428
  110. data/vendor/cereal/include/cereal/external/rapidxml/rapidxml_utils.hpp +0 -123
  111. data/vendor/cereal/include/cereal/macros.hpp +0 -154
  112. data/vendor/cereal/include/cereal/specialize.hpp +0 -139
  113. data/vendor/cereal/include/cereal/types/array.hpp +0 -79
  114. data/vendor/cereal/include/cereal/types/atomic.hpp +0 -55
  115. data/vendor/cereal/include/cereal/types/base_class.hpp +0 -203
  116. data/vendor/cereal/include/cereal/types/bitset.hpp +0 -176
  117. data/vendor/cereal/include/cereal/types/boost_variant.hpp +0 -164
  118. data/vendor/cereal/include/cereal/types/chrono.hpp +0 -72
  119. data/vendor/cereal/include/cereal/types/common.hpp +0 -129
  120. data/vendor/cereal/include/cereal/types/complex.hpp +0 -56
  121. data/vendor/cereal/include/cereal/types/concepts/pair_associative_container.hpp +0 -73
  122. data/vendor/cereal/include/cereal/types/deque.hpp +0 -62
  123. data/vendor/cereal/include/cereal/types/forward_list.hpp +0 -68
  124. data/vendor/cereal/include/cereal/types/functional.hpp +0 -43
  125. data/vendor/cereal/include/cereal/types/list.hpp +0 -62
  126. data/vendor/cereal/include/cereal/types/map.hpp +0 -36
  127. data/vendor/cereal/include/cereal/types/memory.hpp +0 -425
  128. data/vendor/cereal/include/cereal/types/optional.hpp +0 -66
  129. data/vendor/cereal/include/cereal/types/polymorphic.hpp +0 -483
  130. data/vendor/cereal/include/cereal/types/queue.hpp +0 -132
  131. data/vendor/cereal/include/cereal/types/set.hpp +0 -103
  132. data/vendor/cereal/include/cereal/types/stack.hpp +0 -76
  133. data/vendor/cereal/include/cereal/types/string.hpp +0 -61
  134. data/vendor/cereal/include/cereal/types/tuple.hpp +0 -123
  135. data/vendor/cereal/include/cereal/types/unordered_map.hpp +0 -36
  136. data/vendor/cereal/include/cereal/types/unordered_set.hpp +0 -99
  137. data/vendor/cereal/include/cereal/types/utility.hpp +0 -47
  138. data/vendor/cereal/include/cereal/types/valarray.hpp +0 -89
  139. data/vendor/cereal/include/cereal/types/variant.hpp +0 -109
  140. data/vendor/cereal/include/cereal/types/vector.hpp +0 -112
  141. data/vendor/cereal/include/cereal/version.hpp +0 -52
  142. data/vendor/isotree/src/Makevars +0 -4
  143. data/vendor/isotree/src/crit.cpp +0 -912
  144. data/vendor/isotree/src/dist.cpp +0 -749
  145. data/vendor/isotree/src/extended.cpp +0 -790
  146. data/vendor/isotree/src/fit_model.cpp +0 -1090
  147. data/vendor/isotree/src/helpers_iforest.cpp +0 -324
  148. data/vendor/isotree/src/isoforest.cpp +0 -771
  149. data/vendor/isotree/src/mult.cpp +0 -607
  150. data/vendor/isotree/src/predict.cpp +0 -853
  151. data/vendor/isotree/src/utils.cpp +0 -1566
@@ -5,12 +5,16 @@
5
5
 
6
6
  using namespace Rcpp;
7
7
 
8
+ #ifdef RCPP_USE_GLOBAL_ROSTREAM
9
+ Rcpp::Rostream<true>& Rcpp::Rcout = Rcpp::Rcpp_cout_get();
10
+ Rcpp::Rostream<false>& Rcpp::Rcerr = Rcpp::Rcpp_cerr_get();
11
+ #endif
12
+
8
13
  // deserialize_IsoForest
9
14
  SEXP deserialize_IsoForest(Rcpp::RawVector src);
10
15
  RcppExport SEXP _isotree_deserialize_IsoForest(SEXP srcSEXP) {
11
16
  BEGIN_RCPP
12
17
  Rcpp::RObject rcpp_result_gen;
13
- Rcpp::RNGScope rcpp_rngScope_gen;
14
18
  Rcpp::traits::input_parameter< Rcpp::RawVector >::type src(srcSEXP);
15
19
  rcpp_result_gen = Rcpp::wrap(deserialize_IsoForest(src));
16
20
  return rcpp_result_gen;
@@ -21,7 +25,6 @@ SEXP deserialize_ExtIsoForest(Rcpp::RawVector src);
21
25
  RcppExport SEXP _isotree_deserialize_ExtIsoForest(SEXP srcSEXP) {
22
26
  BEGIN_RCPP
23
27
  Rcpp::RObject rcpp_result_gen;
24
- Rcpp::RNGScope rcpp_rngScope_gen;
25
28
  Rcpp::traits::input_parameter< Rcpp::RawVector >::type src(srcSEXP);
26
29
  rcpp_result_gen = Rcpp::wrap(deserialize_ExtIsoForest(src));
27
30
  return rcpp_result_gen;
@@ -32,29 +35,36 @@ SEXP deserialize_Imputer(Rcpp::RawVector src);
32
35
  RcppExport SEXP _isotree_deserialize_Imputer(SEXP srcSEXP) {
33
36
  BEGIN_RCPP
34
37
  Rcpp::RObject rcpp_result_gen;
35
- Rcpp::RNGScope rcpp_rngScope_gen;
36
38
  Rcpp::traits::input_parameter< Rcpp::RawVector >::type src(srcSEXP);
37
39
  rcpp_result_gen = Rcpp::wrap(deserialize_Imputer(src));
38
40
  return rcpp_result_gen;
39
41
  END_RCPP
40
42
  }
43
+ // deserialize_Indexer
44
+ SEXP deserialize_Indexer(Rcpp::RawVector src);
45
+ RcppExport SEXP _isotree_deserialize_Indexer(SEXP srcSEXP) {
46
+ BEGIN_RCPP
47
+ Rcpp::RObject rcpp_result_gen;
48
+ Rcpp::traits::input_parameter< Rcpp::RawVector >::type src(srcSEXP);
49
+ rcpp_result_gen = Rcpp::wrap(deserialize_Indexer(src));
50
+ return rcpp_result_gen;
51
+ END_RCPP
52
+ }
41
53
  // check_null_ptr_model
42
54
  Rcpp::LogicalVector check_null_ptr_model(SEXP ptr_model);
43
55
  RcppExport SEXP _isotree_check_null_ptr_model(SEXP ptr_modelSEXP) {
44
56
  BEGIN_RCPP
45
57
  Rcpp::RObject rcpp_result_gen;
46
- Rcpp::RNGScope rcpp_rngScope_gen;
47
58
  Rcpp::traits::input_parameter< SEXP >::type ptr_model(ptr_modelSEXP);
48
59
  rcpp_result_gen = Rcpp::wrap(check_null_ptr_model(ptr_model));
49
60
  return rcpp_result_gen;
50
61
  END_RCPP
51
62
  }
52
63
  // fit_model
53
- Rcpp::List fit_model(Rcpp::NumericVector X_num, Rcpp::IntegerVector X_cat, Rcpp::IntegerVector ncat, Rcpp::NumericVector Xc, Rcpp::IntegerVector Xc_ind, Rcpp::IntegerVector Xc_indptr, Rcpp::NumericVector sample_weights, Rcpp::NumericVector col_weights, size_t nrows, size_t ncols_numeric, size_t ncols_categ, size_t ndim, size_t ntry, Rcpp::CharacterVector coef_type, bool coef_by_prop, bool with_replacement, bool weight_as_sample, size_t sample_size, size_t ntrees, size_t max_depth, bool limit_depth, bool penalize_range, bool calc_dist, bool standardize_dist, bool sq_dist, bool calc_depth, bool standardize_depth, bool weigh_by_kurt, double prob_pick_by_gain_avg, double prob_split_by_gain_avg, double prob_pick_by_gain_pl, double prob_split_by_gain_pl, double min_gain, Rcpp::CharacterVector cat_split_type, Rcpp::CharacterVector new_cat_action, Rcpp::CharacterVector missing_action, bool all_perm, bool build_imputer, bool output_imputations, size_t min_imp_obs, Rcpp::CharacterVector depth_imp, Rcpp::CharacterVector weigh_imp_rows, int random_seed, bool handle_interrupt, int nthreads);
54
- RcppExport SEXP _isotree_fit_model(SEXP X_numSEXP, SEXP X_catSEXP, SEXP ncatSEXP, SEXP XcSEXP, SEXP Xc_indSEXP, SEXP Xc_indptrSEXP, SEXP sample_weightsSEXP, SEXP col_weightsSEXP, SEXP nrowsSEXP, SEXP ncols_numericSEXP, SEXP ncols_categSEXP, SEXP ndimSEXP, SEXP ntrySEXP, SEXP coef_typeSEXP, SEXP coef_by_propSEXP, SEXP with_replacementSEXP, SEXP weight_as_sampleSEXP, SEXP sample_sizeSEXP, SEXP ntreesSEXP, SEXP max_depthSEXP, SEXP limit_depthSEXP, SEXP penalize_rangeSEXP, SEXP calc_distSEXP, SEXP standardize_distSEXP, SEXP sq_distSEXP, SEXP calc_depthSEXP, SEXP standardize_depthSEXP, SEXP weigh_by_kurtSEXP, SEXP prob_pick_by_gain_avgSEXP, SEXP prob_split_by_gain_avgSEXP, SEXP prob_pick_by_gain_plSEXP, SEXP prob_split_by_gain_plSEXP, SEXP min_gainSEXP, SEXP cat_split_typeSEXP, SEXP new_cat_actionSEXP, SEXP missing_actionSEXP, SEXP all_permSEXP, SEXP build_imputerSEXP, SEXP output_imputationsSEXP, SEXP min_imp_obsSEXP, SEXP depth_impSEXP, SEXP weigh_imp_rowsSEXP, SEXP random_seedSEXP, SEXP handle_interruptSEXP, SEXP nthreadsSEXP) {
64
+ Rcpp::List fit_model(Rcpp::NumericVector X_num, Rcpp::IntegerVector X_cat, Rcpp::IntegerVector ncat, Rcpp::NumericVector Xc, Rcpp::IntegerVector Xc_ind, Rcpp::IntegerVector Xc_indptr, Rcpp::NumericVector sample_weights, Rcpp::NumericVector col_weights, size_t nrows, size_t ncols_numeric, size_t ncols_categ, size_t ndim, size_t ntry, Rcpp::CharacterVector coef_type, bool coef_by_prop, bool with_replacement, bool weight_as_sample, size_t sample_size, size_t ntrees, size_t max_depth, size_t ncols_per_tree, bool limit_depth, bool penalize_range, bool standardize_data, Rcpp::CharacterVector scoring_metric, bool fast_bratio, bool calc_dist, bool standardize_dist, bool sq_dist, bool calc_depth, bool standardize_depth, bool weigh_by_kurt, double prob_pick_by_gain_pl, double prob_pick_by_gain_avg, double prob_pick_by_full_gain, double prob_pick_by_dens, double prob_pick_col_by_range, double prob_pick_col_by_var, double prob_pick_col_by_kurt, double min_gain, Rcpp::CharacterVector cat_split_type, Rcpp::CharacterVector new_cat_action, Rcpp::CharacterVector missing_action, bool all_perm, bool build_imputer, bool output_imputations, size_t min_imp_obs, Rcpp::CharacterVector depth_imp, Rcpp::CharacterVector weigh_imp_rows, int random_seed, bool use_long_double, int nthreads);
65
+ RcppExport SEXP _isotree_fit_model(SEXP X_numSEXP, SEXP X_catSEXP, SEXP ncatSEXP, SEXP XcSEXP, SEXP Xc_indSEXP, SEXP Xc_indptrSEXP, SEXP sample_weightsSEXP, SEXP col_weightsSEXP, SEXP nrowsSEXP, SEXP ncols_numericSEXP, SEXP ncols_categSEXP, SEXP ndimSEXP, SEXP ntrySEXP, SEXP coef_typeSEXP, SEXP coef_by_propSEXP, SEXP with_replacementSEXP, SEXP weight_as_sampleSEXP, SEXP sample_sizeSEXP, SEXP ntreesSEXP, SEXP max_depthSEXP, SEXP ncols_per_treeSEXP, SEXP limit_depthSEXP, SEXP penalize_rangeSEXP, SEXP standardize_dataSEXP, SEXP scoring_metricSEXP, SEXP fast_bratioSEXP, SEXP calc_distSEXP, SEXP standardize_distSEXP, SEXP sq_distSEXP, SEXP calc_depthSEXP, SEXP standardize_depthSEXP, SEXP weigh_by_kurtSEXP, SEXP prob_pick_by_gain_plSEXP, SEXP prob_pick_by_gain_avgSEXP, SEXP prob_pick_by_full_gainSEXP, SEXP prob_pick_by_densSEXP, SEXP prob_pick_col_by_rangeSEXP, SEXP prob_pick_col_by_varSEXP, SEXP prob_pick_col_by_kurtSEXP, SEXP min_gainSEXP, SEXP cat_split_typeSEXP, SEXP new_cat_actionSEXP, SEXP missing_actionSEXP, SEXP all_permSEXP, SEXP build_imputerSEXP, SEXP output_imputationsSEXP, SEXP min_imp_obsSEXP, SEXP depth_impSEXP, SEXP weigh_imp_rowsSEXP, SEXP random_seedSEXP, SEXP use_long_doubleSEXP, SEXP nthreadsSEXP) {
55
66
  BEGIN_RCPP
56
67
  Rcpp::RObject rcpp_result_gen;
57
- Rcpp::RNGScope rcpp_rngScope_gen;
58
68
  Rcpp::traits::input_parameter< Rcpp::NumericVector >::type X_num(X_numSEXP);
59
69
  Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type X_cat(X_catSEXP);
60
70
  Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type ncat(ncatSEXP);
@@ -75,18 +85,25 @@ BEGIN_RCPP
75
85
  Rcpp::traits::input_parameter< size_t >::type sample_size(sample_sizeSEXP);
76
86
  Rcpp::traits::input_parameter< size_t >::type ntrees(ntreesSEXP);
77
87
  Rcpp::traits::input_parameter< size_t >::type max_depth(max_depthSEXP);
88
+ Rcpp::traits::input_parameter< size_t >::type ncols_per_tree(ncols_per_treeSEXP);
78
89
  Rcpp::traits::input_parameter< bool >::type limit_depth(limit_depthSEXP);
79
90
  Rcpp::traits::input_parameter< bool >::type penalize_range(penalize_rangeSEXP);
91
+ Rcpp::traits::input_parameter< bool >::type standardize_data(standardize_dataSEXP);
92
+ Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type scoring_metric(scoring_metricSEXP);
93
+ Rcpp::traits::input_parameter< bool >::type fast_bratio(fast_bratioSEXP);
80
94
  Rcpp::traits::input_parameter< bool >::type calc_dist(calc_distSEXP);
81
95
  Rcpp::traits::input_parameter< bool >::type standardize_dist(standardize_distSEXP);
82
96
  Rcpp::traits::input_parameter< bool >::type sq_dist(sq_distSEXP);
83
97
  Rcpp::traits::input_parameter< bool >::type calc_depth(calc_depthSEXP);
84
98
  Rcpp::traits::input_parameter< bool >::type standardize_depth(standardize_depthSEXP);
85
99
  Rcpp::traits::input_parameter< bool >::type weigh_by_kurt(weigh_by_kurtSEXP);
86
- Rcpp::traits::input_parameter< double >::type prob_pick_by_gain_avg(prob_pick_by_gain_avgSEXP);
87
- Rcpp::traits::input_parameter< double >::type prob_split_by_gain_avg(prob_split_by_gain_avgSEXP);
88
100
  Rcpp::traits::input_parameter< double >::type prob_pick_by_gain_pl(prob_pick_by_gain_plSEXP);
89
- Rcpp::traits::input_parameter< double >::type prob_split_by_gain_pl(prob_split_by_gain_plSEXP);
101
+ Rcpp::traits::input_parameter< double >::type prob_pick_by_gain_avg(prob_pick_by_gain_avgSEXP);
102
+ Rcpp::traits::input_parameter< double >::type prob_pick_by_full_gain(prob_pick_by_full_gainSEXP);
103
+ Rcpp::traits::input_parameter< double >::type prob_pick_by_dens(prob_pick_by_densSEXP);
104
+ Rcpp::traits::input_parameter< double >::type prob_pick_col_by_range(prob_pick_col_by_rangeSEXP);
105
+ Rcpp::traits::input_parameter< double >::type prob_pick_col_by_var(prob_pick_col_by_varSEXP);
106
+ Rcpp::traits::input_parameter< double >::type prob_pick_col_by_kurt(prob_pick_col_by_kurtSEXP);
90
107
  Rcpp::traits::input_parameter< double >::type min_gain(min_gainSEXP);
91
108
  Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type cat_split_type(cat_split_typeSEXP);
92
109
  Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type new_cat_action(new_cat_actionSEXP);
@@ -98,19 +115,21 @@ BEGIN_RCPP
98
115
  Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type depth_imp(depth_impSEXP);
99
116
  Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type weigh_imp_rows(weigh_imp_rowsSEXP);
100
117
  Rcpp::traits::input_parameter< int >::type random_seed(random_seedSEXP);
101
- Rcpp::traits::input_parameter< bool >::type handle_interrupt(handle_interruptSEXP);
118
+ Rcpp::traits::input_parameter< bool >::type use_long_double(use_long_doubleSEXP);
102
119
  Rcpp::traits::input_parameter< int >::type nthreads(nthreadsSEXP);
103
- rcpp_result_gen = Rcpp::wrap(fit_model(X_num, X_cat, ncat, Xc, Xc_ind, Xc_indptr, sample_weights, col_weights, nrows, ncols_numeric, ncols_categ, ndim, ntry, coef_type, coef_by_prop, with_replacement, weight_as_sample, sample_size, ntrees, max_depth, limit_depth, penalize_range, calc_dist, standardize_dist, sq_dist, calc_depth, standardize_depth, weigh_by_kurt, prob_pick_by_gain_avg, prob_split_by_gain_avg, prob_pick_by_gain_pl, prob_split_by_gain_pl, min_gain, cat_split_type, new_cat_action, missing_action, all_perm, build_imputer, output_imputations, min_imp_obs, depth_imp, weigh_imp_rows, random_seed, handle_interrupt, nthreads));
120
+ rcpp_result_gen = Rcpp::wrap(fit_model(X_num, X_cat, ncat, Xc, Xc_ind, Xc_indptr, sample_weights, col_weights, nrows, ncols_numeric, ncols_categ, ndim, ntry, coef_type, coef_by_prop, with_replacement, weight_as_sample, sample_size, ntrees, max_depth, ncols_per_tree, limit_depth, penalize_range, standardize_data, scoring_metric, fast_bratio, calc_dist, standardize_dist, sq_dist, calc_depth, standardize_depth, weigh_by_kurt, prob_pick_by_gain_pl, prob_pick_by_gain_avg, prob_pick_by_full_gain, prob_pick_by_dens, prob_pick_col_by_range, prob_pick_col_by_var, prob_pick_col_by_kurt, min_gain, cat_split_type, new_cat_action, missing_action, all_perm, build_imputer, output_imputations, min_imp_obs, depth_imp, weigh_imp_rows, random_seed, use_long_double, nthreads));
104
121
  return rcpp_result_gen;
105
122
  END_RCPP
106
123
  }
107
124
  // fit_tree
108
- Rcpp::RawVector fit_tree(SEXP model_R_ptr, Rcpp::NumericVector X_num, Rcpp::IntegerVector X_cat, Rcpp::IntegerVector ncat, Rcpp::NumericVector Xc, Rcpp::IntegerVector Xc_ind, Rcpp::IntegerVector Xc_indptr, Rcpp::NumericVector sample_weights, Rcpp::NumericVector col_weights, size_t nrows, size_t ncols_numeric, size_t ncols_categ, size_t ndim, size_t ntry, Rcpp::CharacterVector coef_type, bool coef_by_prop, size_t max_depth, bool limit_depth, bool penalize_range, bool weigh_by_kurt, double prob_pick_by_gain_avg, double prob_split_by_gain_avg, double prob_pick_by_gain_pl, double prob_split_by_gain_pl, double min_gain, Rcpp::CharacterVector cat_split_type, Rcpp::CharacterVector new_cat_action, Rcpp::CharacterVector missing_action, bool build_imputer, size_t min_imp_obs, SEXP imp_R_ptr, Rcpp::CharacterVector depth_imp, Rcpp::CharacterVector weigh_imp_rows, bool all_perm, uint64_t random_seed);
109
- RcppExport SEXP _isotree_fit_tree(SEXP model_R_ptrSEXP, SEXP X_numSEXP, SEXP X_catSEXP, SEXP ncatSEXP, SEXP XcSEXP, SEXP Xc_indSEXP, SEXP Xc_indptrSEXP, SEXP sample_weightsSEXP, SEXP col_weightsSEXP, SEXP nrowsSEXP, SEXP ncols_numericSEXP, SEXP ncols_categSEXP, SEXP ndimSEXP, SEXP ntrySEXP, SEXP coef_typeSEXP, SEXP coef_by_propSEXP, SEXP max_depthSEXP, SEXP limit_depthSEXP, SEXP penalize_rangeSEXP, SEXP weigh_by_kurtSEXP, SEXP prob_pick_by_gain_avgSEXP, SEXP prob_split_by_gain_avgSEXP, SEXP prob_pick_by_gain_plSEXP, SEXP prob_split_by_gain_plSEXP, SEXP min_gainSEXP, SEXP cat_split_typeSEXP, SEXP new_cat_actionSEXP, SEXP missing_actionSEXP, SEXP build_imputerSEXP, SEXP min_imp_obsSEXP, SEXP imp_R_ptrSEXP, SEXP depth_impSEXP, SEXP weigh_imp_rowsSEXP, SEXP all_permSEXP, SEXP random_seedSEXP) {
125
+ void fit_tree(SEXP model_R_ptr, Rcpp::RawVector serialized_obj, Rcpp::RawVector serialized_imputer, SEXP indexer_R_ptr, Rcpp::RawVector serialized_indexer, Rcpp::NumericVector X_num, Rcpp::IntegerVector X_cat, Rcpp::IntegerVector ncat, Rcpp::NumericVector Xc, Rcpp::IntegerVector Xc_ind, Rcpp::IntegerVector Xc_indptr, Rcpp::NumericVector sample_weights, Rcpp::NumericVector col_weights, size_t nrows, size_t ncols_numeric, size_t ncols_categ, size_t ndim, size_t ntry, Rcpp::CharacterVector coef_type, bool coef_by_prop, size_t max_depth, size_t ncols_per_tree, bool limit_depth, bool penalize_range, bool standardize_data, bool fast_bratio, bool weigh_by_kurt, double prob_pick_by_gain_pl, double prob_pick_by_gain_avg, double prob_pick_by_full_gain, double prob_pick_by_dens, double prob_pick_col_by_range, double prob_pick_col_by_var, double prob_pick_col_by_kurt, double min_gain, Rcpp::CharacterVector cat_split_type, Rcpp::CharacterVector new_cat_action, Rcpp::CharacterVector missing_action, bool build_imputer, size_t min_imp_obs, SEXP imp_R_ptr, Rcpp::CharacterVector depth_imp, Rcpp::CharacterVector weigh_imp_rows, bool all_perm, Rcpp::NumericVector ref_X_num, Rcpp::IntegerVector ref_X_cat, Rcpp::NumericVector ref_Xc, Rcpp::IntegerVector ref_Xc_ind, Rcpp::IntegerVector ref_Xc_indptr, uint64_t random_seed, bool use_long_double, Rcpp::List& model_cpp_obj_update, Rcpp::List& model_params_update);
126
+ RcppExport SEXP _isotree_fit_tree(SEXP model_R_ptrSEXP, SEXP serialized_objSEXP, SEXP serialized_imputerSEXP, SEXP indexer_R_ptrSEXP, SEXP serialized_indexerSEXP, SEXP X_numSEXP, SEXP X_catSEXP, SEXP ncatSEXP, SEXP XcSEXP, SEXP Xc_indSEXP, SEXP Xc_indptrSEXP, SEXP sample_weightsSEXP, SEXP col_weightsSEXP, SEXP nrowsSEXP, SEXP ncols_numericSEXP, SEXP ncols_categSEXP, SEXP ndimSEXP, SEXP ntrySEXP, SEXP coef_typeSEXP, SEXP coef_by_propSEXP, SEXP max_depthSEXP, SEXP ncols_per_treeSEXP, SEXP limit_depthSEXP, SEXP penalize_rangeSEXP, SEXP standardize_dataSEXP, SEXP fast_bratioSEXP, SEXP weigh_by_kurtSEXP, SEXP prob_pick_by_gain_plSEXP, SEXP prob_pick_by_gain_avgSEXP, SEXP prob_pick_by_full_gainSEXP, SEXP prob_pick_by_densSEXP, SEXP prob_pick_col_by_rangeSEXP, SEXP prob_pick_col_by_varSEXP, SEXP prob_pick_col_by_kurtSEXP, SEXP min_gainSEXP, SEXP cat_split_typeSEXP, SEXP new_cat_actionSEXP, SEXP missing_actionSEXP, SEXP build_imputerSEXP, SEXP min_imp_obsSEXP, SEXP imp_R_ptrSEXP, SEXP depth_impSEXP, SEXP weigh_imp_rowsSEXP, SEXP all_permSEXP, SEXP ref_X_numSEXP, SEXP ref_X_catSEXP, SEXP ref_XcSEXP, SEXP ref_Xc_indSEXP, SEXP ref_Xc_indptrSEXP, SEXP random_seedSEXP, SEXP use_long_doubleSEXP, SEXP model_cpp_obj_updateSEXP, SEXP model_params_updateSEXP) {
110
127
  BEGIN_RCPP
111
- Rcpp::RObject rcpp_result_gen;
112
- Rcpp::RNGScope rcpp_rngScope_gen;
113
128
  Rcpp::traits::input_parameter< SEXP >::type model_R_ptr(model_R_ptrSEXP);
129
+ Rcpp::traits::input_parameter< Rcpp::RawVector >::type serialized_obj(serialized_objSEXP);
130
+ Rcpp::traits::input_parameter< Rcpp::RawVector >::type serialized_imputer(serialized_imputerSEXP);
131
+ Rcpp::traits::input_parameter< SEXP >::type indexer_R_ptr(indexer_R_ptrSEXP);
132
+ Rcpp::traits::input_parameter< Rcpp::RawVector >::type serialized_indexer(serialized_indexerSEXP);
114
133
  Rcpp::traits::input_parameter< Rcpp::NumericVector >::type X_num(X_numSEXP);
115
134
  Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type X_cat(X_catSEXP);
116
135
  Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type ncat(ncatSEXP);
@@ -127,13 +146,19 @@ BEGIN_RCPP
127
146
  Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type coef_type(coef_typeSEXP);
128
147
  Rcpp::traits::input_parameter< bool >::type coef_by_prop(coef_by_propSEXP);
129
148
  Rcpp::traits::input_parameter< size_t >::type max_depth(max_depthSEXP);
149
+ Rcpp::traits::input_parameter< size_t >::type ncols_per_tree(ncols_per_treeSEXP);
130
150
  Rcpp::traits::input_parameter< bool >::type limit_depth(limit_depthSEXP);
131
151
  Rcpp::traits::input_parameter< bool >::type penalize_range(penalize_rangeSEXP);
152
+ Rcpp::traits::input_parameter< bool >::type standardize_data(standardize_dataSEXP);
153
+ Rcpp::traits::input_parameter< bool >::type fast_bratio(fast_bratioSEXP);
132
154
  Rcpp::traits::input_parameter< bool >::type weigh_by_kurt(weigh_by_kurtSEXP);
133
- Rcpp::traits::input_parameter< double >::type prob_pick_by_gain_avg(prob_pick_by_gain_avgSEXP);
134
- Rcpp::traits::input_parameter< double >::type prob_split_by_gain_avg(prob_split_by_gain_avgSEXP);
135
155
  Rcpp::traits::input_parameter< double >::type prob_pick_by_gain_pl(prob_pick_by_gain_plSEXP);
136
- Rcpp::traits::input_parameter< double >::type prob_split_by_gain_pl(prob_split_by_gain_plSEXP);
156
+ Rcpp::traits::input_parameter< double >::type prob_pick_by_gain_avg(prob_pick_by_gain_avgSEXP);
157
+ Rcpp::traits::input_parameter< double >::type prob_pick_by_full_gain(prob_pick_by_full_gainSEXP);
158
+ Rcpp::traits::input_parameter< double >::type prob_pick_by_dens(prob_pick_by_densSEXP);
159
+ Rcpp::traits::input_parameter< double >::type prob_pick_col_by_range(prob_pick_col_by_rangeSEXP);
160
+ Rcpp::traits::input_parameter< double >::type prob_pick_col_by_var(prob_pick_col_by_varSEXP);
161
+ Rcpp::traits::input_parameter< double >::type prob_pick_col_by_kurt(prob_pick_col_by_kurtSEXP);
137
162
  Rcpp::traits::input_parameter< double >::type min_gain(min_gainSEXP);
138
163
  Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type cat_split_type(cat_split_typeSEXP);
139
164
  Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type new_cat_action(new_cat_actionSEXP);
@@ -144,20 +169,29 @@ BEGIN_RCPP
144
169
  Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type depth_imp(depth_impSEXP);
145
170
  Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type weigh_imp_rows(weigh_imp_rowsSEXP);
146
171
  Rcpp::traits::input_parameter< bool >::type all_perm(all_permSEXP);
172
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type ref_X_num(ref_X_numSEXP);
173
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type ref_X_cat(ref_X_catSEXP);
174
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type ref_Xc(ref_XcSEXP);
175
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type ref_Xc_ind(ref_Xc_indSEXP);
176
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type ref_Xc_indptr(ref_Xc_indptrSEXP);
147
177
  Rcpp::traits::input_parameter< uint64_t >::type random_seed(random_seedSEXP);
148
- rcpp_result_gen = Rcpp::wrap(fit_tree(model_R_ptr, X_num, X_cat, ncat, Xc, Xc_ind, Xc_indptr, sample_weights, col_weights, nrows, ncols_numeric, ncols_categ, ndim, ntry, coef_type, coef_by_prop, max_depth, limit_depth, penalize_range, weigh_by_kurt, prob_pick_by_gain_avg, prob_split_by_gain_avg, prob_pick_by_gain_pl, prob_split_by_gain_pl, min_gain, cat_split_type, new_cat_action, missing_action, build_imputer, min_imp_obs, imp_R_ptr, depth_imp, weigh_imp_rows, all_perm, random_seed));
149
- return rcpp_result_gen;
178
+ Rcpp::traits::input_parameter< bool >::type use_long_double(use_long_doubleSEXP);
179
+ Rcpp::traits::input_parameter< Rcpp::List& >::type model_cpp_obj_update(model_cpp_obj_updateSEXP);
180
+ Rcpp::traits::input_parameter< Rcpp::List& >::type model_params_update(model_params_updateSEXP);
181
+ fit_tree(model_R_ptr, serialized_obj, serialized_imputer, indexer_R_ptr, serialized_indexer, X_num, X_cat, ncat, Xc, Xc_ind, Xc_indptr, sample_weights, col_weights, nrows, ncols_numeric, ncols_categ, ndim, ntry, coef_type, coef_by_prop, max_depth, ncols_per_tree, limit_depth, penalize_range, standardize_data, fast_bratio, weigh_by_kurt, prob_pick_by_gain_pl, prob_pick_by_gain_avg, prob_pick_by_full_gain, prob_pick_by_dens, prob_pick_col_by_range, prob_pick_col_by_var, prob_pick_col_by_kurt, min_gain, cat_split_type, new_cat_action, missing_action, build_imputer, min_imp_obs, imp_R_ptr, depth_imp, weigh_imp_rows, all_perm, ref_X_num, ref_X_cat, ref_Xc, ref_Xc_ind, ref_Xc_indptr, random_seed, use_long_double, model_cpp_obj_update, model_params_update);
182
+ return R_NilValue;
150
183
  END_RCPP
151
184
  }
152
185
  // predict_iso
153
- void predict_iso(SEXP model_R_ptr, Rcpp::NumericVector outp, Rcpp::IntegerVector tree_num, bool is_extended, Rcpp::NumericVector X_num, Rcpp::IntegerVector X_cat, Rcpp::NumericVector Xc, Rcpp::IntegerVector Xc_ind, Rcpp::IntegerVector Xc_indptr, Rcpp::NumericVector Xr, Rcpp::IntegerVector Xr_ind, Rcpp::IntegerVector Xr_indptr, size_t nrows, int nthreads, bool standardize);
154
- RcppExport SEXP _isotree_predict_iso(SEXP model_R_ptrSEXP, SEXP outpSEXP, SEXP tree_numSEXP, SEXP is_extendedSEXP, SEXP X_numSEXP, SEXP X_catSEXP, SEXP XcSEXP, SEXP Xc_indSEXP, SEXP Xc_indptrSEXP, SEXP XrSEXP, SEXP Xr_indSEXP, SEXP Xr_indptrSEXP, SEXP nrowsSEXP, SEXP nthreadsSEXP, SEXP standardizeSEXP) {
186
+ void predict_iso(SEXP model_R_ptr, bool is_extended, SEXP indexer_R_ptr, Rcpp::NumericVector outp, Rcpp::IntegerMatrix tree_num, Rcpp::NumericMatrix tree_depths, Rcpp::NumericVector X_num, Rcpp::IntegerVector X_cat, Rcpp::NumericVector Xc, Rcpp::IntegerVector Xc_ind, Rcpp::IntegerVector Xc_indptr, Rcpp::NumericVector Xr, Rcpp::IntegerVector Xr_ind, Rcpp::IntegerVector Xr_indptr, size_t nrows, int nthreads, bool standardize);
187
+ RcppExport SEXP _isotree_predict_iso(SEXP model_R_ptrSEXP, SEXP is_extendedSEXP, SEXP indexer_R_ptrSEXP, SEXP outpSEXP, SEXP tree_numSEXP, SEXP tree_depthsSEXP, SEXP X_numSEXP, SEXP X_catSEXP, SEXP XcSEXP, SEXP Xc_indSEXP, SEXP Xc_indptrSEXP, SEXP XrSEXP, SEXP Xr_indSEXP, SEXP Xr_indptrSEXP, SEXP nrowsSEXP, SEXP nthreadsSEXP, SEXP standardizeSEXP) {
155
188
  BEGIN_RCPP
156
- Rcpp::RNGScope rcpp_rngScope_gen;
157
189
  Rcpp::traits::input_parameter< SEXP >::type model_R_ptr(model_R_ptrSEXP);
158
- Rcpp::traits::input_parameter< Rcpp::NumericVector >::type outp(outpSEXP);
159
- Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type tree_num(tree_numSEXP);
160
190
  Rcpp::traits::input_parameter< bool >::type is_extended(is_extendedSEXP);
191
+ Rcpp::traits::input_parameter< SEXP >::type indexer_R_ptr(indexer_R_ptrSEXP);
192
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type outp(outpSEXP);
193
+ Rcpp::traits::input_parameter< Rcpp::IntegerMatrix >::type tree_num(tree_numSEXP);
194
+ Rcpp::traits::input_parameter< Rcpp::NumericMatrix >::type tree_depths(tree_depthsSEXP);
161
195
  Rcpp::traits::input_parameter< Rcpp::NumericVector >::type X_num(X_numSEXP);
162
196
  Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type X_cat(X_catSEXP);
163
197
  Rcpp::traits::input_parameter< Rcpp::NumericVector >::type Xc(XcSEXP);
@@ -169,19 +203,19 @@ BEGIN_RCPP
169
203
  Rcpp::traits::input_parameter< size_t >::type nrows(nrowsSEXP);
170
204
  Rcpp::traits::input_parameter< int >::type nthreads(nthreadsSEXP);
171
205
  Rcpp::traits::input_parameter< bool >::type standardize(standardizeSEXP);
172
- predict_iso(model_R_ptr, outp, tree_num, is_extended, X_num, X_cat, Xc, Xc_ind, Xc_indptr, Xr, Xr_ind, Xr_indptr, nrows, nthreads, standardize);
206
+ predict_iso(model_R_ptr, is_extended, indexer_R_ptr, outp, tree_num, tree_depths, X_num, X_cat, Xc, Xc_ind, Xc_indptr, Xr, Xr_ind, Xr_indptr, nrows, nthreads, standardize);
173
207
  return R_NilValue;
174
208
  END_RCPP
175
209
  }
176
210
  // dist_iso
177
- void dist_iso(SEXP model_R_ptr, Rcpp::NumericVector tmat, Rcpp::NumericVector dmat, Rcpp::NumericVector rmat, bool is_extended, Rcpp::NumericVector X_num, Rcpp::IntegerVector X_cat, Rcpp::NumericVector Xc, Rcpp::IntegerVector Xc_ind, Rcpp::IntegerVector Xc_indptr, size_t nrows, int nthreads, bool assume_full_distr, bool standardize_dist, bool sq_dist, size_t n_from);
178
- RcppExport SEXP _isotree_dist_iso(SEXP model_R_ptrSEXP, SEXP tmatSEXP, SEXP dmatSEXP, SEXP rmatSEXP, SEXP is_extendedSEXP, SEXP X_numSEXP, SEXP X_catSEXP, SEXP XcSEXP, SEXP Xc_indSEXP, SEXP Xc_indptrSEXP, SEXP nrowsSEXP, SEXP nthreadsSEXP, SEXP assume_full_distrSEXP, SEXP standardize_distSEXP, SEXP sq_distSEXP, SEXP n_fromSEXP) {
211
+ void dist_iso(SEXP model_R_ptr, SEXP indexer_R_ptr, Rcpp::NumericVector tmat, Rcpp::NumericMatrix dmat, Rcpp::NumericMatrix rmat, bool is_extended, Rcpp::NumericVector X_num, Rcpp::IntegerVector X_cat, Rcpp::NumericVector Xc, Rcpp::IntegerVector Xc_ind, Rcpp::IntegerVector Xc_indptr, size_t nrows, bool use_long_double, int nthreads, bool assume_full_distr, bool standardize_dist, bool sq_dist, size_t n_from, bool use_reference_points, bool as_kernel);
212
+ RcppExport SEXP _isotree_dist_iso(SEXP model_R_ptrSEXP, SEXP indexer_R_ptrSEXP, SEXP tmatSEXP, SEXP dmatSEXP, SEXP rmatSEXP, SEXP is_extendedSEXP, SEXP X_numSEXP, SEXP X_catSEXP, SEXP XcSEXP, SEXP Xc_indSEXP, SEXP Xc_indptrSEXP, SEXP nrowsSEXP, SEXP use_long_doubleSEXP, SEXP nthreadsSEXP, SEXP assume_full_distrSEXP, SEXP standardize_distSEXP, SEXP sq_distSEXP, SEXP n_fromSEXP, SEXP use_reference_pointsSEXP, SEXP as_kernelSEXP) {
179
213
  BEGIN_RCPP
180
- Rcpp::RNGScope rcpp_rngScope_gen;
181
214
  Rcpp::traits::input_parameter< SEXP >::type model_R_ptr(model_R_ptrSEXP);
215
+ Rcpp::traits::input_parameter< SEXP >::type indexer_R_ptr(indexer_R_ptrSEXP);
182
216
  Rcpp::traits::input_parameter< Rcpp::NumericVector >::type tmat(tmatSEXP);
183
- Rcpp::traits::input_parameter< Rcpp::NumericVector >::type dmat(dmatSEXP);
184
- Rcpp::traits::input_parameter< Rcpp::NumericVector >::type rmat(rmatSEXP);
217
+ Rcpp::traits::input_parameter< Rcpp::NumericMatrix >::type dmat(dmatSEXP);
218
+ Rcpp::traits::input_parameter< Rcpp::NumericMatrix >::type rmat(rmatSEXP);
185
219
  Rcpp::traits::input_parameter< bool >::type is_extended(is_extendedSEXP);
186
220
  Rcpp::traits::input_parameter< Rcpp::NumericVector >::type X_num(X_numSEXP);
187
221
  Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type X_cat(X_catSEXP);
@@ -189,21 +223,23 @@ BEGIN_RCPP
189
223
  Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xc_ind(Xc_indSEXP);
190
224
  Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xc_indptr(Xc_indptrSEXP);
191
225
  Rcpp::traits::input_parameter< size_t >::type nrows(nrowsSEXP);
226
+ Rcpp::traits::input_parameter< bool >::type use_long_double(use_long_doubleSEXP);
192
227
  Rcpp::traits::input_parameter< int >::type nthreads(nthreadsSEXP);
193
228
  Rcpp::traits::input_parameter< bool >::type assume_full_distr(assume_full_distrSEXP);
194
229
  Rcpp::traits::input_parameter< bool >::type standardize_dist(standardize_distSEXP);
195
230
  Rcpp::traits::input_parameter< bool >::type sq_dist(sq_distSEXP);
196
231
  Rcpp::traits::input_parameter< size_t >::type n_from(n_fromSEXP);
197
- dist_iso(model_R_ptr, tmat, dmat, rmat, is_extended, X_num, X_cat, Xc, Xc_ind, Xc_indptr, nrows, nthreads, assume_full_distr, standardize_dist, sq_dist, n_from);
232
+ Rcpp::traits::input_parameter< bool >::type use_reference_points(use_reference_pointsSEXP);
233
+ Rcpp::traits::input_parameter< bool >::type as_kernel(as_kernelSEXP);
234
+ dist_iso(model_R_ptr, indexer_R_ptr, tmat, dmat, rmat, is_extended, X_num, X_cat, Xc, Xc_ind, Xc_indptr, nrows, use_long_double, nthreads, assume_full_distr, standardize_dist, sq_dist, n_from, use_reference_points, as_kernel);
198
235
  return R_NilValue;
199
236
  END_RCPP
200
237
  }
201
238
  // impute_iso
202
- Rcpp::List impute_iso(SEXP model_R_ptr, SEXP imputer_R_ptr, bool is_extended, Rcpp::NumericVector X_num, Rcpp::IntegerVector X_cat, Rcpp::NumericVector Xr, Rcpp::IntegerVector Xr_ind, Rcpp::IntegerVector Xr_indptr, size_t nrows, int nthreads);
203
- RcppExport SEXP _isotree_impute_iso(SEXP model_R_ptrSEXP, SEXP imputer_R_ptrSEXP, SEXP is_extendedSEXP, SEXP X_numSEXP, SEXP X_catSEXP, SEXP XrSEXP, SEXP Xr_indSEXP, SEXP Xr_indptrSEXP, SEXP nrowsSEXP, SEXP nthreadsSEXP) {
239
+ Rcpp::List impute_iso(SEXP model_R_ptr, SEXP imputer_R_ptr, bool is_extended, Rcpp::NumericVector X_num, Rcpp::IntegerVector X_cat, Rcpp::NumericVector Xr, Rcpp::IntegerVector Xr_ind, Rcpp::IntegerVector Xr_indptr, size_t nrows, bool use_long_double, int nthreads);
240
+ RcppExport SEXP _isotree_impute_iso(SEXP model_R_ptrSEXP, SEXP imputer_R_ptrSEXP, SEXP is_extendedSEXP, SEXP X_numSEXP, SEXP X_catSEXP, SEXP XrSEXP, SEXP Xr_indSEXP, SEXP Xr_indptrSEXP, SEXP nrowsSEXP, SEXP use_long_doubleSEXP, SEXP nthreadsSEXP) {
204
241
  BEGIN_RCPP
205
242
  Rcpp::RObject rcpp_result_gen;
206
- Rcpp::RNGScope rcpp_rngScope_gen;
207
243
  Rcpp::traits::input_parameter< SEXP >::type model_R_ptr(model_R_ptrSEXP);
208
244
  Rcpp::traits::input_parameter< SEXP >::type imputer_R_ptr(imputer_R_ptrSEXP);
209
245
  Rcpp::traits::input_parameter< bool >::type is_extended(is_extendedSEXP);
@@ -213,17 +249,71 @@ BEGIN_RCPP
213
249
  Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xr_ind(Xr_indSEXP);
214
250
  Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xr_indptr(Xr_indptrSEXP);
215
251
  Rcpp::traits::input_parameter< size_t >::type nrows(nrowsSEXP);
252
+ Rcpp::traits::input_parameter< bool >::type use_long_double(use_long_doubleSEXP);
216
253
  Rcpp::traits::input_parameter< int >::type nthreads(nthreadsSEXP);
217
- rcpp_result_gen = Rcpp::wrap(impute_iso(model_R_ptr, imputer_R_ptr, is_extended, X_num, X_cat, Xr, Xr_ind, Xr_indptr, nrows, nthreads));
254
+ rcpp_result_gen = Rcpp::wrap(impute_iso(model_R_ptr, imputer_R_ptr, is_extended, X_num, X_cat, Xr, Xr_ind, Xr_indptr, nrows, use_long_double, nthreads));
255
+ return rcpp_result_gen;
256
+ END_RCPP
257
+ }
258
+ // drop_imputer
259
+ void drop_imputer(Rcpp::List lst_modify, Rcpp::List lst_modify2);
260
+ RcppExport SEXP _isotree_drop_imputer(SEXP lst_modifySEXP, SEXP lst_modify2SEXP) {
261
+ BEGIN_RCPP
262
+ Rcpp::traits::input_parameter< Rcpp::List >::type lst_modify(lst_modifySEXP);
263
+ Rcpp::traits::input_parameter< Rcpp::List >::type lst_modify2(lst_modify2SEXP);
264
+ drop_imputer(lst_modify, lst_modify2);
265
+ return R_NilValue;
266
+ END_RCPP
267
+ }
268
+ // drop_indexer
269
+ void drop_indexer(Rcpp::List lst_modify, Rcpp::List lst_modify2);
270
+ RcppExport SEXP _isotree_drop_indexer(SEXP lst_modifySEXP, SEXP lst_modify2SEXP) {
271
+ BEGIN_RCPP
272
+ Rcpp::traits::input_parameter< Rcpp::List >::type lst_modify(lst_modifySEXP);
273
+ Rcpp::traits::input_parameter< Rcpp::List >::type lst_modify2(lst_modify2SEXP);
274
+ drop_indexer(lst_modify, lst_modify2);
275
+ return R_NilValue;
276
+ END_RCPP
277
+ }
278
+ // drop_reference_points
279
+ void drop_reference_points(Rcpp::List lst_modify, Rcpp::List lst_modify2);
280
+ RcppExport SEXP _isotree_drop_reference_points(SEXP lst_modifySEXP, SEXP lst_modify2SEXP) {
281
+ BEGIN_RCPP
282
+ Rcpp::traits::input_parameter< Rcpp::List >::type lst_modify(lst_modifySEXP);
283
+ Rcpp::traits::input_parameter< Rcpp::List >::type lst_modify2(lst_modify2SEXP);
284
+ drop_reference_points(lst_modify, lst_modify2);
285
+ return R_NilValue;
286
+ END_RCPP
287
+ }
288
+ // subset_trees
289
+ Rcpp::List subset_trees(SEXP model_R_ptr, SEXP imputer_R_ptr, SEXP indexer_R_ptr, bool is_extended, bool has_imputer, Rcpp::IntegerVector trees_take);
290
+ RcppExport SEXP _isotree_subset_trees(SEXP model_R_ptrSEXP, SEXP imputer_R_ptrSEXP, SEXP indexer_R_ptrSEXP, SEXP is_extendedSEXP, SEXP has_imputerSEXP, SEXP trees_takeSEXP) {
291
+ BEGIN_RCPP
292
+ Rcpp::RObject rcpp_result_gen;
293
+ Rcpp::traits::input_parameter< SEXP >::type model_R_ptr(model_R_ptrSEXP);
294
+ Rcpp::traits::input_parameter< SEXP >::type imputer_R_ptr(imputer_R_ptrSEXP);
295
+ Rcpp::traits::input_parameter< SEXP >::type indexer_R_ptr(indexer_R_ptrSEXP);
296
+ Rcpp::traits::input_parameter< bool >::type is_extended(is_extendedSEXP);
297
+ Rcpp::traits::input_parameter< bool >::type has_imputer(has_imputerSEXP);
298
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type trees_take(trees_takeSEXP);
299
+ rcpp_result_gen = Rcpp::wrap(subset_trees(model_R_ptr, imputer_R_ptr, indexer_R_ptr, is_extended, has_imputer, trees_take));
218
300
  return rcpp_result_gen;
219
301
  END_RCPP
220
302
  }
303
+ // inplace_set_to_zero
304
+ void inplace_set_to_zero(SEXP obj);
305
+ RcppExport SEXP _isotree_inplace_set_to_zero(SEXP objSEXP) {
306
+ BEGIN_RCPP
307
+ Rcpp::traits::input_parameter< SEXP >::type obj(objSEXP);
308
+ inplace_set_to_zero(obj);
309
+ return R_NilValue;
310
+ END_RCPP
311
+ }
221
312
  // get_n_nodes
222
313
  Rcpp::List get_n_nodes(SEXP model_R_ptr, bool is_extended, int nthreads);
223
314
  RcppExport SEXP _isotree_get_n_nodes(SEXP model_R_ptrSEXP, SEXP is_extendedSEXP, SEXP nthreadsSEXP) {
224
315
  BEGIN_RCPP
225
316
  Rcpp::RObject rcpp_result_gen;
226
- Rcpp::RNGScope rcpp_rngScope_gen;
227
317
  Rcpp::traits::input_parameter< SEXP >::type model_R_ptr(model_R_ptrSEXP);
228
318
  Rcpp::traits::input_parameter< bool >::type is_extended(is_extendedSEXP);
229
319
  Rcpp::traits::input_parameter< int >::type nthreads(nthreadsSEXP);
@@ -232,18 +322,23 @@ BEGIN_RCPP
232
322
  END_RCPP
233
323
  }
234
324
  // append_trees_from_other
235
- Rcpp::List append_trees_from_other(SEXP model_R_ptr, SEXP other_R_ptr, SEXP imp_R_ptr, SEXP oimp_R_ptr, bool is_extended);
236
- RcppExport SEXP _isotree_append_trees_from_other(SEXP model_R_ptrSEXP, SEXP other_R_ptrSEXP, SEXP imp_R_ptrSEXP, SEXP oimp_R_ptrSEXP, SEXP is_extendedSEXP) {
325
+ void append_trees_from_other(SEXP model_R_ptr, SEXP other_R_ptr, SEXP imp_R_ptr, SEXP oimp_R_ptr, SEXP ind_R_ptr, SEXP oind_R_ptr, bool is_extended, Rcpp::RawVector serialized_obj, Rcpp::RawVector serialized_imputer, Rcpp::RawVector serialized_indexer, Rcpp::List& model_cpp_obj_update, Rcpp::List& model_params_update);
326
+ RcppExport SEXP _isotree_append_trees_from_other(SEXP model_R_ptrSEXP, SEXP other_R_ptrSEXP, SEXP imp_R_ptrSEXP, SEXP oimp_R_ptrSEXP, SEXP ind_R_ptrSEXP, SEXP oind_R_ptrSEXP, SEXP is_extendedSEXP, SEXP serialized_objSEXP, SEXP serialized_imputerSEXP, SEXP serialized_indexerSEXP, SEXP model_cpp_obj_updateSEXP, SEXP model_params_updateSEXP) {
237
327
  BEGIN_RCPP
238
- Rcpp::RObject rcpp_result_gen;
239
- Rcpp::RNGScope rcpp_rngScope_gen;
240
328
  Rcpp::traits::input_parameter< SEXP >::type model_R_ptr(model_R_ptrSEXP);
241
329
  Rcpp::traits::input_parameter< SEXP >::type other_R_ptr(other_R_ptrSEXP);
242
330
  Rcpp::traits::input_parameter< SEXP >::type imp_R_ptr(imp_R_ptrSEXP);
243
331
  Rcpp::traits::input_parameter< SEXP >::type oimp_R_ptr(oimp_R_ptrSEXP);
332
+ Rcpp::traits::input_parameter< SEXP >::type ind_R_ptr(ind_R_ptrSEXP);
333
+ Rcpp::traits::input_parameter< SEXP >::type oind_R_ptr(oind_R_ptrSEXP);
244
334
  Rcpp::traits::input_parameter< bool >::type is_extended(is_extendedSEXP);
245
- rcpp_result_gen = Rcpp::wrap(append_trees_from_other(model_R_ptr, other_R_ptr, imp_R_ptr, oimp_R_ptr, is_extended));
246
- return rcpp_result_gen;
335
+ Rcpp::traits::input_parameter< Rcpp::RawVector >::type serialized_obj(serialized_objSEXP);
336
+ Rcpp::traits::input_parameter< Rcpp::RawVector >::type serialized_imputer(serialized_imputerSEXP);
337
+ Rcpp::traits::input_parameter< Rcpp::RawVector >::type serialized_indexer(serialized_indexerSEXP);
338
+ Rcpp::traits::input_parameter< Rcpp::List& >::type model_cpp_obj_update(model_cpp_obj_updateSEXP);
339
+ Rcpp::traits::input_parameter< Rcpp::List& >::type model_params_update(model_params_updateSEXP);
340
+ append_trees_from_other(model_R_ptr, other_R_ptr, imp_R_ptr, oimp_R_ptr, ind_R_ptr, oind_R_ptr, is_extended, serialized_obj, serialized_imputer, serialized_indexer, model_cpp_obj_update, model_params_update);
341
+ return R_NilValue;
247
342
  END_RCPP
248
343
  }
249
344
  // model_to_sql
@@ -251,7 +346,6 @@ Rcpp::ListOf<Rcpp::CharacterVector> model_to_sql(SEXP model_R_ptr, bool is_exten
251
346
  RcppExport SEXP _isotree_model_to_sql(SEXP model_R_ptrSEXP, SEXP is_extendedSEXP, SEXP numeric_colanmesSEXP, SEXP categ_colnamesSEXP, SEXP categ_levelsSEXP, SEXP output_tree_numSEXP, SEXP single_treeSEXP, SEXP tree_numSEXP, SEXP nthreadsSEXP) {
252
347
  BEGIN_RCPP
253
348
  Rcpp::RObject rcpp_result_gen;
254
- Rcpp::RNGScope rcpp_rngScope_gen;
255
349
  Rcpp::traits::input_parameter< SEXP >::type model_R_ptr(model_R_ptrSEXP);
256
350
  Rcpp::traits::input_parameter< bool >::type is_extended(is_extendedSEXP);
257
351
  Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type numeric_colanmes(numeric_colanmesSEXP);
@@ -270,7 +364,6 @@ Rcpp::CharacterVector model_to_sql_with_select_from(SEXP model_R_ptr, bool is_ex
270
364
  RcppExport SEXP _isotree_model_to_sql_with_select_from(SEXP model_R_ptrSEXP, SEXP is_extendedSEXP, SEXP numeric_colanmesSEXP, SEXP categ_colnamesSEXP, SEXP categ_levelsSEXP, SEXP table_fromSEXP, SEXP select_asSEXP, SEXP nthreadsSEXP) {
271
365
  BEGIN_RCPP
272
366
  Rcpp::RObject rcpp_result_gen;
273
- Rcpp::RNGScope rcpp_rngScope_gen;
274
367
  Rcpp::traits::input_parameter< SEXP >::type model_R_ptr(model_R_ptrSEXP);
275
368
  Rcpp::traits::input_parameter< bool >::type is_extended(is_extendedSEXP);
276
369
  Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type numeric_colanmes(numeric_colanmesSEXP);
@@ -283,21 +376,401 @@ BEGIN_RCPP
283
376
  return rcpp_result_gen;
284
377
  END_RCPP
285
378
  }
379
+ // copy_cpp_objects
380
+ Rcpp::List copy_cpp_objects(SEXP model_R_ptr, bool is_extended, SEXP imp_R_ptr, bool has_imputer, SEXP ind_R_ptr);
381
+ RcppExport SEXP _isotree_copy_cpp_objects(SEXP model_R_ptrSEXP, SEXP is_extendedSEXP, SEXP imp_R_ptrSEXP, SEXP has_imputerSEXP, SEXP ind_R_ptrSEXP) {
382
+ BEGIN_RCPP
383
+ Rcpp::RObject rcpp_result_gen;
384
+ Rcpp::traits::input_parameter< SEXP >::type model_R_ptr(model_R_ptrSEXP);
385
+ Rcpp::traits::input_parameter< bool >::type is_extended(is_extendedSEXP);
386
+ Rcpp::traits::input_parameter< SEXP >::type imp_R_ptr(imp_R_ptrSEXP);
387
+ Rcpp::traits::input_parameter< bool >::type has_imputer(has_imputerSEXP);
388
+ Rcpp::traits::input_parameter< SEXP >::type ind_R_ptr(ind_R_ptrSEXP);
389
+ rcpp_result_gen = Rcpp::wrap(copy_cpp_objects(model_R_ptr, is_extended, imp_R_ptr, has_imputer, ind_R_ptr));
390
+ return rcpp_result_gen;
391
+ END_RCPP
392
+ }
393
+ // build_tree_indices
394
+ void build_tree_indices(Rcpp::List lst_modify, bool is_extended, bool with_distances, int nthreads);
395
+ RcppExport SEXP _isotree_build_tree_indices(SEXP lst_modifySEXP, SEXP is_extendedSEXP, SEXP with_distancesSEXP, SEXP nthreadsSEXP) {
396
+ BEGIN_RCPP
397
+ Rcpp::traits::input_parameter< Rcpp::List >::type lst_modify(lst_modifySEXP);
398
+ Rcpp::traits::input_parameter< bool >::type is_extended(is_extendedSEXP);
399
+ Rcpp::traits::input_parameter< bool >::type with_distances(with_distancesSEXP);
400
+ Rcpp::traits::input_parameter< int >::type nthreads(nthreadsSEXP);
401
+ build_tree_indices(lst_modify, is_extended, with_distances, nthreads);
402
+ return R_NilValue;
403
+ END_RCPP
404
+ }
405
+ // check_node_indexer_has_distances
406
+ bool check_node_indexer_has_distances(SEXP indexer_R_ptr);
407
+ RcppExport SEXP _isotree_check_node_indexer_has_distances(SEXP indexer_R_ptrSEXP) {
408
+ BEGIN_RCPP
409
+ Rcpp::RObject rcpp_result_gen;
410
+ Rcpp::traits::input_parameter< SEXP >::type indexer_R_ptr(indexer_R_ptrSEXP);
411
+ rcpp_result_gen = Rcpp::wrap(check_node_indexer_has_distances(indexer_R_ptr));
412
+ return rcpp_result_gen;
413
+ END_RCPP
414
+ }
415
+ // set_reference_points
416
+ void set_reference_points(Rcpp::List lst_modify, Rcpp::List lst_modify2, SEXP rnames, bool is_extended, Rcpp::NumericVector X_num, Rcpp::IntegerVector X_cat, Rcpp::NumericVector Xc, Rcpp::IntegerVector Xc_ind, Rcpp::IntegerVector Xc_indptr, size_t nrows, int nthreads, bool with_distances);
417
+ RcppExport SEXP _isotree_set_reference_points(SEXP lst_modifySEXP, SEXP lst_modify2SEXP, SEXP rnamesSEXP, SEXP is_extendedSEXP, SEXP X_numSEXP, SEXP X_catSEXP, SEXP XcSEXP, SEXP Xc_indSEXP, SEXP Xc_indptrSEXP, SEXP nrowsSEXP, SEXP nthreadsSEXP, SEXP with_distancesSEXP) {
418
+ BEGIN_RCPP
419
+ Rcpp::traits::input_parameter< Rcpp::List >::type lst_modify(lst_modifySEXP);
420
+ Rcpp::traits::input_parameter< Rcpp::List >::type lst_modify2(lst_modify2SEXP);
421
+ Rcpp::traits::input_parameter< SEXP >::type rnames(rnamesSEXP);
422
+ Rcpp::traits::input_parameter< bool >::type is_extended(is_extendedSEXP);
423
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type X_num(X_numSEXP);
424
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type X_cat(X_catSEXP);
425
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type Xc(XcSEXP);
426
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xc_ind(Xc_indSEXP);
427
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xc_indptr(Xc_indptrSEXP);
428
+ Rcpp::traits::input_parameter< size_t >::type nrows(nrowsSEXP);
429
+ Rcpp::traits::input_parameter< int >::type nthreads(nthreadsSEXP);
430
+ Rcpp::traits::input_parameter< bool >::type with_distances(with_distancesSEXP);
431
+ set_reference_points(lst_modify, lst_modify2, rnames, is_extended, X_num, X_cat, Xc, Xc_ind, Xc_indptr, nrows, nthreads, with_distances);
432
+ return R_NilValue;
433
+ END_RCPP
434
+ }
435
+ // check_node_indexer_has_references
436
+ bool check_node_indexer_has_references(SEXP indexer_R_ptr);
437
+ RcppExport SEXP _isotree_check_node_indexer_has_references(SEXP indexer_R_ptrSEXP) {
438
+ BEGIN_RCPP
439
+ Rcpp::RObject rcpp_result_gen;
440
+ Rcpp::traits::input_parameter< SEXP >::type indexer_R_ptr(indexer_R_ptrSEXP);
441
+ rcpp_result_gen = Rcpp::wrap(check_node_indexer_has_references(indexer_R_ptr));
442
+ return rcpp_result_gen;
443
+ END_RCPP
444
+ }
445
+ // get_num_references
446
+ int get_num_references(SEXP indexer_R_ptr);
447
+ RcppExport SEXP _isotree_get_num_references(SEXP indexer_R_ptrSEXP) {
448
+ BEGIN_RCPP
449
+ Rcpp::RObject rcpp_result_gen;
450
+ Rcpp::traits::input_parameter< SEXP >::type indexer_R_ptr(indexer_R_ptrSEXP);
451
+ rcpp_result_gen = Rcpp::wrap(get_num_references(indexer_R_ptr));
452
+ return rcpp_result_gen;
453
+ END_RCPP
454
+ }
455
+ // get_null_R_pointer
456
+ SEXP get_null_R_pointer();
457
+ RcppExport SEXP _isotree_get_null_R_pointer() {
458
+ BEGIN_RCPP
459
+ Rcpp::RObject rcpp_result_gen;
460
+ rcpp_result_gen = Rcpp::wrap(get_null_R_pointer());
461
+ return rcpp_result_gen;
462
+ END_RCPP
463
+ }
464
+ // serialize_to_file
465
+ void serialize_to_file(Rcpp::RawVector serialized_obj, Rcpp::RawVector serialized_imputer, Rcpp::RawVector serialized_indexer, bool is_extended, Rcpp::RawVector metadata, Rcpp::CharacterVector fname);
466
+ RcppExport SEXP _isotree_serialize_to_file(SEXP serialized_objSEXP, SEXP serialized_imputerSEXP, SEXP serialized_indexerSEXP, SEXP is_extendedSEXP, SEXP metadataSEXP, SEXP fnameSEXP) {
467
+ BEGIN_RCPP
468
+ Rcpp::RNGScope rcpp_rngScope_gen;
469
+ Rcpp::traits::input_parameter< Rcpp::RawVector >::type serialized_obj(serialized_objSEXP);
470
+ Rcpp::traits::input_parameter< Rcpp::RawVector >::type serialized_imputer(serialized_imputerSEXP);
471
+ Rcpp::traits::input_parameter< Rcpp::RawVector >::type serialized_indexer(serialized_indexerSEXP);
472
+ Rcpp::traits::input_parameter< bool >::type is_extended(is_extendedSEXP);
473
+ Rcpp::traits::input_parameter< Rcpp::RawVector >::type metadata(metadataSEXP);
474
+ Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type fname(fnameSEXP);
475
+ serialize_to_file(serialized_obj, serialized_imputer, serialized_indexer, is_extended, metadata, fname);
476
+ return R_NilValue;
477
+ END_RCPP
478
+ }
479
+ // deserialize_from_file
480
+ Rcpp::List deserialize_from_file(Rcpp::CharacterVector fname);
481
+ RcppExport SEXP _isotree_deserialize_from_file(SEXP fnameSEXP) {
482
+ BEGIN_RCPP
483
+ Rcpp::RObject rcpp_result_gen;
484
+ Rcpp::RNGScope rcpp_rngScope_gen;
485
+ Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type fname(fnameSEXP);
486
+ rcpp_result_gen = Rcpp::wrap(deserialize_from_file(fname));
487
+ return rcpp_result_gen;
488
+ END_RCPP
489
+ }
490
+ // call_sort_csc_indices
491
+ void call_sort_csc_indices(Rcpp::NumericVector Xc, Rcpp::IntegerVector Xc_ind, Rcpp::IntegerVector Xc_indptr);
492
+ RcppExport SEXP _isotree_call_sort_csc_indices(SEXP XcSEXP, SEXP Xc_indSEXP, SEXP Xc_indptrSEXP) {
493
+ BEGIN_RCPP
494
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type Xc(XcSEXP);
495
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xc_ind(Xc_indSEXP);
496
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xc_indptr(Xc_indptrSEXP);
497
+ call_sort_csc_indices(Xc, Xc_ind, Xc_indptr);
498
+ return R_NilValue;
499
+ END_RCPP
500
+ }
501
+ // call_reconstruct_csr_sliced
502
+ void call_reconstruct_csr_sliced(Rcpp::NumericVector orig_Xr, Rcpp::IntegerVector orig_Xr_indptr, Rcpp::NumericVector rec_Xr, Rcpp::IntegerVector rec_Xr_indptr, size_t nrows);
503
+ RcppExport SEXP _isotree_call_reconstruct_csr_sliced(SEXP orig_XrSEXP, SEXP orig_Xr_indptrSEXP, SEXP rec_XrSEXP, SEXP rec_Xr_indptrSEXP, SEXP nrowsSEXP) {
504
+ BEGIN_RCPP
505
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type orig_Xr(orig_XrSEXP);
506
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type orig_Xr_indptr(orig_Xr_indptrSEXP);
507
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type rec_Xr(rec_XrSEXP);
508
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type rec_Xr_indptr(rec_Xr_indptrSEXP);
509
+ Rcpp::traits::input_parameter< size_t >::type nrows(nrowsSEXP);
510
+ call_reconstruct_csr_sliced(orig_Xr, orig_Xr_indptr, rec_Xr, rec_Xr_indptr, nrows);
511
+ return R_NilValue;
512
+ END_RCPP
513
+ }
514
+ // call_reconstruct_csr_with_categ
515
+ void call_reconstruct_csr_with_categ(Rcpp::NumericVector orig_Xr, Rcpp::IntegerVector orig_Xr_ind, Rcpp::IntegerVector orig_Xr_indptr, Rcpp::NumericVector rec_Xr, Rcpp::IntegerVector rec_Xr_ind, Rcpp::IntegerVector rec_Xr_indptr, Rcpp::IntegerVector rec_X_cat, Rcpp::IntegerVector cols_numeric, Rcpp::IntegerVector cols_categ, size_t nrows, size_t ncols);
516
+ RcppExport SEXP _isotree_call_reconstruct_csr_with_categ(SEXP orig_XrSEXP, SEXP orig_Xr_indSEXP, SEXP orig_Xr_indptrSEXP, SEXP rec_XrSEXP, SEXP rec_Xr_indSEXP, SEXP rec_Xr_indptrSEXP, SEXP rec_X_catSEXP, SEXP cols_numericSEXP, SEXP cols_categSEXP, SEXP nrowsSEXP, SEXP ncolsSEXP) {
517
+ BEGIN_RCPP
518
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type orig_Xr(orig_XrSEXP);
519
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type orig_Xr_ind(orig_Xr_indSEXP);
520
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type orig_Xr_indptr(orig_Xr_indptrSEXP);
521
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type rec_Xr(rec_XrSEXP);
522
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type rec_Xr_ind(rec_Xr_indSEXP);
523
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type rec_Xr_indptr(rec_Xr_indptrSEXP);
524
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type rec_X_cat(rec_X_catSEXP);
525
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type cols_numeric(cols_numericSEXP);
526
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type cols_categ(cols_categSEXP);
527
+ Rcpp::traits::input_parameter< size_t >::type nrows(nrowsSEXP);
528
+ Rcpp::traits::input_parameter< size_t >::type ncols(ncolsSEXP);
529
+ call_reconstruct_csr_with_categ(orig_Xr, orig_Xr_ind, orig_Xr_indptr, rec_Xr, rec_Xr_ind, rec_Xr_indptr, rec_X_cat, cols_numeric, cols_categ, nrows, ncols);
530
+ return R_NilValue;
531
+ END_RCPP
532
+ }
533
+ // deepcopy_vector
534
+ Rcpp::NumericVector deepcopy_vector(Rcpp::NumericVector inp);
535
+ RcppExport SEXP _isotree_deepcopy_vector(SEXP inpSEXP) {
536
+ BEGIN_RCPP
537
+ Rcpp::RObject rcpp_result_gen;
538
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type inp(inpSEXP);
539
+ rcpp_result_gen = Rcpp::wrap(deepcopy_vector(inp));
540
+ return rcpp_result_gen;
541
+ END_RCPP
542
+ }
543
+ // call_take_cols_by_slice_csr
544
+ Rcpp::List call_take_cols_by_slice_csr(Rcpp::NumericVector Xr_, Rcpp::IntegerVector Xr_ind_, Rcpp::IntegerVector Xr_indptr, int ncols_take, bool as_dense);
545
+ RcppExport SEXP _isotree_call_take_cols_by_slice_csr(SEXP Xr_SEXP, SEXP Xr_ind_SEXP, SEXP Xr_indptrSEXP, SEXP ncols_takeSEXP, SEXP as_denseSEXP) {
546
+ BEGIN_RCPP
547
+ Rcpp::RObject rcpp_result_gen;
548
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type Xr_(Xr_SEXP);
549
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xr_ind_(Xr_ind_SEXP);
550
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xr_indptr(Xr_indptrSEXP);
551
+ Rcpp::traits::input_parameter< int >::type ncols_take(ncols_takeSEXP);
552
+ Rcpp::traits::input_parameter< bool >::type as_dense(as_denseSEXP);
553
+ rcpp_result_gen = Rcpp::wrap(call_take_cols_by_slice_csr(Xr_, Xr_ind_, Xr_indptr, ncols_take, as_dense));
554
+ return rcpp_result_gen;
555
+ END_RCPP
556
+ }
557
+ // call_take_cols_by_index_csr
558
+ Rcpp::List call_take_cols_by_index_csr(Rcpp::NumericVector Xr, Rcpp::IntegerVector Xr_ind, Rcpp::IntegerVector Xr_indptr, Rcpp::IntegerVector cols_take, bool as_dense);
559
+ RcppExport SEXP _isotree_call_take_cols_by_index_csr(SEXP XrSEXP, SEXP Xr_indSEXP, SEXP Xr_indptrSEXP, SEXP cols_takeSEXP, SEXP as_denseSEXP) {
560
+ BEGIN_RCPP
561
+ Rcpp::RObject rcpp_result_gen;
562
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type Xr(XrSEXP);
563
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xr_ind(Xr_indSEXP);
564
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xr_indptr(Xr_indptrSEXP);
565
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type cols_take(cols_takeSEXP);
566
+ Rcpp::traits::input_parameter< bool >::type as_dense(as_denseSEXP);
567
+ rcpp_result_gen = Rcpp::wrap(call_take_cols_by_index_csr(Xr, Xr_ind, Xr_indptr, cols_take, as_dense));
568
+ return rcpp_result_gen;
569
+ END_RCPP
570
+ }
571
+ // call_take_cols_by_slice_csc
572
+ Rcpp::List call_take_cols_by_slice_csc(Rcpp::NumericVector Xc, Rcpp::IntegerVector Xc_ind, Rcpp::IntegerVector Xc_indptr, size_t ncols_take, bool as_dense, size_t nrows);
573
+ RcppExport SEXP _isotree_call_take_cols_by_slice_csc(SEXP XcSEXP, SEXP Xc_indSEXP, SEXP Xc_indptrSEXP, SEXP ncols_takeSEXP, SEXP as_denseSEXP, SEXP nrowsSEXP) {
574
+ BEGIN_RCPP
575
+ Rcpp::RObject rcpp_result_gen;
576
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type Xc(XcSEXP);
577
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xc_ind(Xc_indSEXP);
578
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xc_indptr(Xc_indptrSEXP);
579
+ Rcpp::traits::input_parameter< size_t >::type ncols_take(ncols_takeSEXP);
580
+ Rcpp::traits::input_parameter< bool >::type as_dense(as_denseSEXP);
581
+ Rcpp::traits::input_parameter< size_t >::type nrows(nrowsSEXP);
582
+ rcpp_result_gen = Rcpp::wrap(call_take_cols_by_slice_csc(Xc, Xc_ind, Xc_indptr, ncols_take, as_dense, nrows));
583
+ return rcpp_result_gen;
584
+ END_RCPP
585
+ }
586
+ // call_take_cols_by_index_csc
587
+ Rcpp::List call_take_cols_by_index_csc(Rcpp::NumericVector Xc_, Rcpp::IntegerVector Xc_ind_, Rcpp::IntegerVector Xc_indptr, Rcpp::IntegerVector cols_take, bool as_dense, size_t nrows);
588
+ RcppExport SEXP _isotree_call_take_cols_by_index_csc(SEXP Xc_SEXP, SEXP Xc_ind_SEXP, SEXP Xc_indptrSEXP, SEXP cols_takeSEXP, SEXP as_denseSEXP, SEXP nrowsSEXP) {
589
+ BEGIN_RCPP
590
+ Rcpp::RObject rcpp_result_gen;
591
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type Xc_(Xc_SEXP);
592
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xc_ind_(Xc_ind_SEXP);
593
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xc_indptr(Xc_indptrSEXP);
594
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type cols_take(cols_takeSEXP);
595
+ Rcpp::traits::input_parameter< bool >::type as_dense(as_denseSEXP);
596
+ Rcpp::traits::input_parameter< size_t >::type nrows(nrowsSEXP);
597
+ rcpp_result_gen = Rcpp::wrap(call_take_cols_by_index_csc(Xc_, Xc_ind_, Xc_indptr, cols_take, as_dense, nrows));
598
+ return rcpp_result_gen;
599
+ END_RCPP
600
+ }
601
+ // copy_csc_cols_by_slice
602
+ void copy_csc_cols_by_slice(Rcpp::NumericVector out_Xc_, Rcpp::IntegerVector out_Xc_indptr, Rcpp::NumericVector from_Xc_, Rcpp::IntegerVector from_Xc_indptr, size_t n_copy);
603
+ RcppExport SEXP _isotree_copy_csc_cols_by_slice(SEXP out_Xc_SEXP, SEXP out_Xc_indptrSEXP, SEXP from_Xc_SEXP, SEXP from_Xc_indptrSEXP, SEXP n_copySEXP) {
604
+ BEGIN_RCPP
605
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type out_Xc_(out_Xc_SEXP);
606
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type out_Xc_indptr(out_Xc_indptrSEXP);
607
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type from_Xc_(from_Xc_SEXP);
608
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type from_Xc_indptr(from_Xc_indptrSEXP);
609
+ Rcpp::traits::input_parameter< size_t >::type n_copy(n_copySEXP);
610
+ copy_csc_cols_by_slice(out_Xc_, out_Xc_indptr, from_Xc_, from_Xc_indptr, n_copy);
611
+ return R_NilValue;
612
+ END_RCPP
613
+ }
614
+ // copy_csc_cols_by_index
615
+ void copy_csc_cols_by_index(Rcpp::NumericVector out_Xc_, Rcpp::IntegerVector out_Xc_indptr, Rcpp::NumericVector from_Xc_, Rcpp::IntegerVector from_Xc_indptr, Rcpp::IntegerVector cols_copy);
616
+ RcppExport SEXP _isotree_copy_csc_cols_by_index(SEXP out_Xc_SEXP, SEXP out_Xc_indptrSEXP, SEXP from_Xc_SEXP, SEXP from_Xc_indptrSEXP, SEXP cols_copySEXP) {
617
+ BEGIN_RCPP
618
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type out_Xc_(out_Xc_SEXP);
619
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type out_Xc_indptr(out_Xc_indptrSEXP);
620
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type from_Xc_(from_Xc_SEXP);
621
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type from_Xc_indptr(from_Xc_indptrSEXP);
622
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type cols_copy(cols_copySEXP);
623
+ copy_csc_cols_by_index(out_Xc_, out_Xc_indptr, from_Xc_, from_Xc_indptr, cols_copy);
624
+ return R_NilValue;
625
+ END_RCPP
626
+ }
627
+ // assign_csc_cols
628
+ Rcpp::List assign_csc_cols(Rcpp::NumericVector Xc_, Rcpp::IntegerVector Xc_ind_, Rcpp::IntegerVector Xc_indptr, Rcpp::IntegerVector X_cat_, Rcpp::IntegerVector cols_categ, Rcpp::IntegerVector cols_numeric, size_t nrows);
629
+ RcppExport SEXP _isotree_assign_csc_cols(SEXP Xc_SEXP, SEXP Xc_ind_SEXP, SEXP Xc_indptrSEXP, SEXP X_cat_SEXP, SEXP cols_categSEXP, SEXP cols_numericSEXP, SEXP nrowsSEXP) {
630
+ BEGIN_RCPP
631
+ Rcpp::RObject rcpp_result_gen;
632
+ Rcpp::traits::input_parameter< Rcpp::NumericVector >::type Xc_(Xc_SEXP);
633
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xc_ind_(Xc_ind_SEXP);
634
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type Xc_indptr(Xc_indptrSEXP);
635
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type X_cat_(X_cat_SEXP);
636
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type cols_categ(cols_categSEXP);
637
+ Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type cols_numeric(cols_numericSEXP);
638
+ Rcpp::traits::input_parameter< size_t >::type nrows(nrowsSEXP);
639
+ rcpp_result_gen = Rcpp::wrap(assign_csc_cols(Xc_, Xc_ind_, Xc_indptr, X_cat_, cols_categ, cols_numeric, nrows));
640
+ return rcpp_result_gen;
641
+ END_RCPP
642
+ }
643
+ // get_empty_tmat
644
+ Rcpp::NumericVector get_empty_tmat(int nrows_);
645
+ RcppExport SEXP _isotree_get_empty_tmat(SEXP nrows_SEXP) {
646
+ BEGIN_RCPP
647
+ Rcpp::RObject rcpp_result_gen;
648
+ Rcpp::traits::input_parameter< int >::type nrows_(nrows_SEXP);
649
+ rcpp_result_gen = Rcpp::wrap(get_empty_tmat(nrows_));
650
+ return rcpp_result_gen;
651
+ END_RCPP
652
+ }
653
+ // get_empty_int_mat
654
+ Rcpp::IntegerMatrix get_empty_int_mat(int nrows, int ncols);
655
+ RcppExport SEXP _isotree_get_empty_int_mat(SEXP nrowsSEXP, SEXP ncolsSEXP) {
656
+ BEGIN_RCPP
657
+ Rcpp::RObject rcpp_result_gen;
658
+ Rcpp::traits::input_parameter< int >::type nrows(nrowsSEXP);
659
+ Rcpp::traits::input_parameter< int >::type ncols(ncolsSEXP);
660
+ rcpp_result_gen = Rcpp::wrap(get_empty_int_mat(nrows, ncols));
661
+ return rcpp_result_gen;
662
+ END_RCPP
663
+ }
664
+ // get_null_int_mat
665
+ Rcpp::IntegerMatrix get_null_int_mat();
666
+ RcppExport SEXP _isotree_get_null_int_mat() {
667
+ BEGIN_RCPP
668
+ Rcpp::RObject rcpp_result_gen;
669
+ rcpp_result_gen = Rcpp::wrap(get_null_int_mat());
670
+ return rcpp_result_gen;
671
+ END_RCPP
672
+ }
673
+ // get_ntrees
674
+ int get_ntrees(SEXP model_R_ptr, bool is_extended);
675
+ RcppExport SEXP _isotree_get_ntrees(SEXP model_R_ptrSEXP, SEXP is_extendedSEXP) {
676
+ BEGIN_RCPP
677
+ Rcpp::RObject rcpp_result_gen;
678
+ Rcpp::traits::input_parameter< SEXP >::type model_R_ptr(model_R_ptrSEXP);
679
+ Rcpp::traits::input_parameter< bool >::type is_extended(is_extendedSEXP);
680
+ rcpp_result_gen = Rcpp::wrap(get_ntrees(model_R_ptr, is_extended));
681
+ return rcpp_result_gen;
682
+ END_RCPP
683
+ }
684
+ // deepcopy_int
685
+ SEXP deepcopy_int(SEXP x);
686
+ RcppExport SEXP _isotree_deepcopy_int(SEXP xSEXP) {
687
+ BEGIN_RCPP
688
+ Rcpp::RObject rcpp_result_gen;
689
+ Rcpp::traits::input_parameter< SEXP >::type x(xSEXP);
690
+ rcpp_result_gen = Rcpp::wrap(deepcopy_int(x));
691
+ return rcpp_result_gen;
692
+ END_RCPP
693
+ }
694
+ // modify_R_list_inplace
695
+ void modify_R_list_inplace(SEXP lst, int ix, SEXP el);
696
+ RcppExport SEXP _isotree_modify_R_list_inplace(SEXP lstSEXP, SEXP ixSEXP, SEXP elSEXP) {
697
+ BEGIN_RCPP
698
+ Rcpp::traits::input_parameter< SEXP >::type lst(lstSEXP);
699
+ Rcpp::traits::input_parameter< int >::type ix(ixSEXP);
700
+ Rcpp::traits::input_parameter< SEXP >::type el(elSEXP);
701
+ modify_R_list_inplace(lst, ix, el);
702
+ return R_NilValue;
703
+ END_RCPP
704
+ }
705
+ // addto_R_list_inplace
706
+ void addto_R_list_inplace(Rcpp::List& lst, Rcpp::String nm, SEXP el);
707
+ RcppExport SEXP _isotree_addto_R_list_inplace(SEXP lstSEXP, SEXP nmSEXP, SEXP elSEXP) {
708
+ BEGIN_RCPP
709
+ Rcpp::traits::input_parameter< Rcpp::List& >::type lst(lstSEXP);
710
+ Rcpp::traits::input_parameter< Rcpp::String >::type nm(nmSEXP);
711
+ Rcpp::traits::input_parameter< SEXP >::type el(elSEXP);
712
+ addto_R_list_inplace(lst, nm, el);
713
+ return R_NilValue;
714
+ END_RCPP
715
+ }
716
+ // R_has_openmp
717
+ bool R_has_openmp();
718
+ RcppExport SEXP _isotree_R_has_openmp() {
719
+ BEGIN_RCPP
720
+ Rcpp::RObject rcpp_result_gen;
721
+ rcpp_result_gen = Rcpp::wrap(R_has_openmp());
722
+ return rcpp_result_gen;
723
+ END_RCPP
724
+ }
286
725
 
287
726
  static const R_CallMethodDef CallEntries[] = {
288
727
  {"_isotree_deserialize_IsoForest", (DL_FUNC) &_isotree_deserialize_IsoForest, 1},
289
728
  {"_isotree_deserialize_ExtIsoForest", (DL_FUNC) &_isotree_deserialize_ExtIsoForest, 1},
290
729
  {"_isotree_deserialize_Imputer", (DL_FUNC) &_isotree_deserialize_Imputer, 1},
730
+ {"_isotree_deserialize_Indexer", (DL_FUNC) &_isotree_deserialize_Indexer, 1},
291
731
  {"_isotree_check_null_ptr_model", (DL_FUNC) &_isotree_check_null_ptr_model, 1},
292
- {"_isotree_fit_model", (DL_FUNC) &_isotree_fit_model, 45},
293
- {"_isotree_fit_tree", (DL_FUNC) &_isotree_fit_tree, 35},
294
- {"_isotree_predict_iso", (DL_FUNC) &_isotree_predict_iso, 15},
295
- {"_isotree_dist_iso", (DL_FUNC) &_isotree_dist_iso, 16},
296
- {"_isotree_impute_iso", (DL_FUNC) &_isotree_impute_iso, 10},
732
+ {"_isotree_fit_model", (DL_FUNC) &_isotree_fit_model, 52},
733
+ {"_isotree_fit_tree", (DL_FUNC) &_isotree_fit_tree, 53},
734
+ {"_isotree_predict_iso", (DL_FUNC) &_isotree_predict_iso, 17},
735
+ {"_isotree_dist_iso", (DL_FUNC) &_isotree_dist_iso, 20},
736
+ {"_isotree_impute_iso", (DL_FUNC) &_isotree_impute_iso, 11},
737
+ {"_isotree_drop_imputer", (DL_FUNC) &_isotree_drop_imputer, 2},
738
+ {"_isotree_drop_indexer", (DL_FUNC) &_isotree_drop_indexer, 2},
739
+ {"_isotree_drop_reference_points", (DL_FUNC) &_isotree_drop_reference_points, 2},
740
+ {"_isotree_subset_trees", (DL_FUNC) &_isotree_subset_trees, 6},
741
+ {"_isotree_inplace_set_to_zero", (DL_FUNC) &_isotree_inplace_set_to_zero, 1},
297
742
  {"_isotree_get_n_nodes", (DL_FUNC) &_isotree_get_n_nodes, 3},
298
- {"_isotree_append_trees_from_other", (DL_FUNC) &_isotree_append_trees_from_other, 5},
743
+ {"_isotree_append_trees_from_other", (DL_FUNC) &_isotree_append_trees_from_other, 12},
299
744
  {"_isotree_model_to_sql", (DL_FUNC) &_isotree_model_to_sql, 9},
300
745
  {"_isotree_model_to_sql_with_select_from", (DL_FUNC) &_isotree_model_to_sql_with_select_from, 8},
746
+ {"_isotree_copy_cpp_objects", (DL_FUNC) &_isotree_copy_cpp_objects, 5},
747
+ {"_isotree_build_tree_indices", (DL_FUNC) &_isotree_build_tree_indices, 4},
748
+ {"_isotree_check_node_indexer_has_distances", (DL_FUNC) &_isotree_check_node_indexer_has_distances, 1},
749
+ {"_isotree_set_reference_points", (DL_FUNC) &_isotree_set_reference_points, 12},
750
+ {"_isotree_check_node_indexer_has_references", (DL_FUNC) &_isotree_check_node_indexer_has_references, 1},
751
+ {"_isotree_get_num_references", (DL_FUNC) &_isotree_get_num_references, 1},
752
+ {"_isotree_get_null_R_pointer", (DL_FUNC) &_isotree_get_null_R_pointer, 0},
753
+ {"_isotree_serialize_to_file", (DL_FUNC) &_isotree_serialize_to_file, 6},
754
+ {"_isotree_deserialize_from_file", (DL_FUNC) &_isotree_deserialize_from_file, 1},
755
+ {"_isotree_call_sort_csc_indices", (DL_FUNC) &_isotree_call_sort_csc_indices, 3},
756
+ {"_isotree_call_reconstruct_csr_sliced", (DL_FUNC) &_isotree_call_reconstruct_csr_sliced, 5},
757
+ {"_isotree_call_reconstruct_csr_with_categ", (DL_FUNC) &_isotree_call_reconstruct_csr_with_categ, 11},
758
+ {"_isotree_deepcopy_vector", (DL_FUNC) &_isotree_deepcopy_vector, 1},
759
+ {"_isotree_call_take_cols_by_slice_csr", (DL_FUNC) &_isotree_call_take_cols_by_slice_csr, 5},
760
+ {"_isotree_call_take_cols_by_index_csr", (DL_FUNC) &_isotree_call_take_cols_by_index_csr, 5},
761
+ {"_isotree_call_take_cols_by_slice_csc", (DL_FUNC) &_isotree_call_take_cols_by_slice_csc, 6},
762
+ {"_isotree_call_take_cols_by_index_csc", (DL_FUNC) &_isotree_call_take_cols_by_index_csc, 6},
763
+ {"_isotree_copy_csc_cols_by_slice", (DL_FUNC) &_isotree_copy_csc_cols_by_slice, 5},
764
+ {"_isotree_copy_csc_cols_by_index", (DL_FUNC) &_isotree_copy_csc_cols_by_index, 5},
765
+ {"_isotree_assign_csc_cols", (DL_FUNC) &_isotree_assign_csc_cols, 7},
766
+ {"_isotree_get_empty_tmat", (DL_FUNC) &_isotree_get_empty_tmat, 1},
767
+ {"_isotree_get_empty_int_mat", (DL_FUNC) &_isotree_get_empty_int_mat, 2},
768
+ {"_isotree_get_null_int_mat", (DL_FUNC) &_isotree_get_null_int_mat, 0},
769
+ {"_isotree_get_ntrees", (DL_FUNC) &_isotree_get_ntrees, 2},
770
+ {"_isotree_deepcopy_int", (DL_FUNC) &_isotree_deepcopy_int, 1},
771
+ {"_isotree_modify_R_list_inplace", (DL_FUNC) &_isotree_modify_R_list_inplace, 3},
772
+ {"_isotree_addto_R_list_inplace", (DL_FUNC) &_isotree_addto_R_list_inplace, 3},
773
+ {"_isotree_R_has_openmp", (DL_FUNC) &_isotree_R_has_openmp, 0},
301
774
  {NULL, NULL, 0}
302
775
  };
303
776