MCPcopy Create free account
hub / github.com/catboost/catboost / IsMissingValue

Function IsMissingValue

catboost/libs/data/loader.cpp:361–402  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

359 }
360
361 bool IsMissingValue(const TStringBuf& s) {
362 switch (s.length()) {
363 case 0:
364 return true;
365 case 1:
366 return s[0] == '-';
367 case 2:
368 return (ToLower(s[0]) == 'n') && (
369 s == "NA"sv ||
370 s == "Na"sv ||
371 s == "na"sv ||
372 false);
373 case 3:
374 return (ToLower(s[0]) == 'n' || ToLower(s[1]) == 'n') && (
375 s == "nan"sv ||
376 s == "NaN"sv ||
377 s == "NAN"sv ||
378 s == "#NA"sv ||
379 s == "N/A"sv ||
380 s == "n/a"sv ||
381 false);
382 case 4:
383 return (ToLower(s[0]) == 'n' || ToLower(s[1]) == 'n') && (
384 s == "#N/A"sv ||
385 s == "-NaN"sv ||
386 s == "-nan"sv ||
387 s == "NULL"sv ||
388 s == "null"sv ||
389 s == "Null"sv ||
390 s == "none"sv ||
391 s == "None"sv ||
392 false);
393 default:
394 return
395 s == "#N/A N/A"sv ||
396 s == "-1.#IND"sv ||
397 s == "-1.#QNAN"sv ||
398 s == "1.#IND"sv ||
399 s == "1.#QNAN"sv ||
400 false;
401 }
402 }
403
404 namespace {
405 struct TStupidStringHash {

Callers 1

TryFloatFromStringFunction · 0.85

Calls 2

ToLowerFunction · 0.50
lengthMethod · 0.45

Tested by

no test coverage detected