MCPcopy Create free account
hub / github.com/antmachineintelligence/mtgbmcode / LGBM_DatasetGetSubset

Function LGBM_DatasetGetSubset

src/c_api.cpp:921–947  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

919}
920
921int LGBM_DatasetGetSubset(
922 const DatasetHandle handle,
923 const int32_t* used_row_indices,
924 int32_t num_used_row_indices,
925 const char* parameters,
926 DatasetHandle* out) {
927 API_BEGIN();
928 auto param = Config::Str2Map(parameters);
929 Config config;
930 config.Set(param);
931 if (config.num_threads > 0) {
932 omp_set_num_threads(config.num_threads);
933 }
934 auto full_dataset = reinterpret_cast<const Dataset*>(handle);
935 CHECK(num_used_row_indices > 0);
936 const int32_t lower = 0;
937 const int32_t upper = full_dataset->num_data() - 1;
938 Common::CheckElementsIntervalClosed(used_row_indices, lower, upper, num_used_row_indices, "Used indices of subset");
939 if (!std::is_sorted(used_row_indices, used_row_indices + num_used_row_indices)) {
940 Log::Fatal("used_row_indices should be sorted in Subset");
941 }
942 auto ret = std::unique_ptr<Dataset>(new Dataset(num_used_row_indices));
943 ret->CopyFeatureMapperFrom(full_dataset);
944 ret->CopySubset(full_dataset, used_row_indices, num_used_row_indices, true);
945 *out = ret.release();
946 API_END();
947}
948
949int LGBM_DatasetSetFeatureNames(
950 DatasetHandle handle,

Callers 1

LGBM_DatasetGetSubset_RFunction · 0.70

Calls 7

is_sortedFunction · 0.85
omp_set_num_threadsFunction · 0.50
SetMethod · 0.45
num_dataMethod · 0.45
CopyFeatureMapperFromMethod · 0.45
CopySubsetMethod · 0.45

Tested by

no test coverage detected