| 416 | QCOMPARE(stats.entropy, 2.); |
| 417 | } |
| 418 | void ColumnTest::statisticsIntOverflow() { |
| 419 | Column c(QStringLiteral("Integer column"), Column::ColumnMode::Integer); |
| 420 | c.setIntegers({1000000000, 1100000000, 1200000000, 1300000000}); |
| 421 | |
| 422 | auto& stats = c.statistics(); |
| 423 | |
| 424 | QCOMPARE(stats.size, 4); |
| 425 | QCOMPARE(stats.minimum, 1000000000); |
| 426 | QCOMPARE(stats.maximum, 1300000000); |
| 427 | QCOMPARE(stats.arithmeticMean, 1150000000); |
| 428 | QCOMPARE(stats.geometricMean, 1144535640.12); |
| 429 | QCOMPARE(stats.harmonicMean, 1139064055.75838); |
| 430 | QCOMPARE(stats.contraharmonicMean, 1160869565.21739); |
| 431 | |
| 432 | QCOMPARE(stats.mode, NAN); |
| 433 | QCOMPARE(stats.firstQuartile, 1075000000); |
| 434 | QCOMPARE(stats.median, 1150000000); |
| 435 | QCOMPARE(stats.thirdQuartile, 1225000000); |
| 436 | QCOMPARE(stats.iqr, 150000000); |
| 437 | QCOMPARE(stats.percentile_1, 1003000000); |
| 438 | QCOMPARE(stats.percentile_5, 1015000000); |
| 439 | QCOMPARE(stats.percentile_10, 1030000000); |
| 440 | QCOMPARE(stats.percentile_90, 1270000000); |
| 441 | QCOMPARE(stats.percentile_95, 1285000000); |
| 442 | QCOMPARE(stats.percentile_99, 1297000000); |
| 443 | QCOMPARE(stats.trimean, 1150000000); |
| 444 | QCOMPARE(stats.variance, 1.66666666666667e+16); |
| 445 | QCOMPARE(stats.standardDeviation, 129099444.873581); |
| 446 | QCOMPARE(stats.meanDeviation, 100000000); |
| 447 | QCOMPARE(stats.meanDeviationAroundMedian, 100000000); |
| 448 | QCOMPARE(stats.medianDeviation, 100000000); |
| 449 | QCOMPARE(stats.skewness, 0.); |
| 450 | QCOMPARE(stats.kurtosis, 1.64); |
| 451 | QCOMPARE(stats.entropy, 2.); |
| 452 | } |
| 453 | void ColumnTest::statisticsBigInt() { |
| 454 | Column c(QStringLiteral("BigInt column"), Column::ColumnMode::BigInt); |
| 455 | c.setBigInts({-10000000000, 0, 1000000000, 10000000000}); |
nothing calls this directly
no test coverage detected