| 276 | } |
| 277 | |
| 278 | void ColumnTest::statisticsInt() { |
| 279 | Column c(QStringLiteral("Integer column"), Column::ColumnMode::Integer); |
| 280 | c.setIntegers({1, 1, 2, 5}); |
| 281 | |
| 282 | auto& stats = c.statistics(); |
| 283 | |
| 284 | QCOMPARE(stats.size, 4); |
| 285 | QCOMPARE(stats.minimum, 1.); |
| 286 | QCOMPARE(stats.maximum, 5.); |
| 287 | QCOMPARE(stats.arithmeticMean, 2.25); |
| 288 | QCOMPARE(stats.geometricMean, pow(10., 0.25)); |
| 289 | QCOMPARE(stats.harmonicMean, 40. / 27.); |
| 290 | QCOMPARE(stats.contraharmonicMean, 31. / 9.); |
| 291 | |
| 292 | QCOMPARE(stats.mode, 1.); |
| 293 | QCOMPARE(stats.firstQuartile, 1.); |
| 294 | QCOMPARE(stats.median, 1.5); |
| 295 | QCOMPARE(stats.thirdQuartile, 2.75); |
| 296 | QCOMPARE(stats.iqr, 1.75); |
| 297 | QCOMPARE(stats.percentile_1, 1.); |
| 298 | QCOMPARE(stats.percentile_5, 1.); |
| 299 | QCOMPARE(stats.percentile_10, 1.); |
| 300 | QCOMPARE(stats.percentile_90, 4.1); |
| 301 | QCOMPARE(stats.percentile_95, 4.55); |
| 302 | QCOMPARE(stats.percentile_99, 4.91); |
| 303 | QCOMPARE(stats.trimean, 1.6875); |
| 304 | QCOMPARE(stats.variance, 3.58333333333); |
| 305 | QCOMPARE(stats.standardDeviation, 1.8929694486); |
| 306 | QCOMPARE(stats.meanDeviation, 1.375); |
| 307 | QCOMPARE(stats.meanDeviationAroundMedian, 1.25); |
| 308 | QCOMPARE(stats.medianDeviation, 0.5); |
| 309 | QCOMPARE(stats.skewness, 0.95754916255356); |
| 310 | QCOMPARE(stats.kurtosis, 2.1487290427258); |
| 311 | QCOMPARE(stats.entropy, 1.5); |
| 312 | } |
| 313 | void ColumnTest::statisticsIntNegative() { |
| 314 | Column c(QStringLiteral("Integer column"), Column::ColumnMode::Integer); |
| 315 | c.setIntegers({-1, 0, 2, 5}); |
nothing calls this directly
no test coverage detected