Skip to content
Snippets Groups Projects

Round mean values calculated during data analysis

Merged Manon Blanco requested to merge analyze-round-mean-value into main
All threads resolved!
# -*- coding: utf-8 -*-
# -*- coding: utf-8 -*-
import logging
import logging
from collections import Counter, defaultdict
from collections import Counter, defaultdict
 
from functools import partial
from pathlib import Path
from pathlib import Path
from typing import Dict, List, Optional
from typing import Dict, List, Optional
@@ -32,23 +33,32 @@ def create_table(
@@ -32,23 +33,32 @@ def create_table(
operations = []
operations = []
if count:
if count:
operations.append(("Count", len))
operations.append(("Count", len, None))
operations.extend(
operations.extend(
[
[
("Min", np.min),
("Min", np.min, None),
("Max", np.max),
("Max", np.max, None),
("Mean", np.mean),
("Mean", np.mean, 2),
("Median", np.median),
("Median", np.median, 2),
]
]
)
)
if total:
if total:
operations.append(("Total", np.sum))
operations.append(("Total", np.sum, None))
statistics.add_rows(
statistics.add_rows(
[
[
[col_name, *list(map(operator, data.values()))]
[
for col_name, operator in operations
col_name,
 
*list(
 
map(
 
# Round values if needed
 
partial(round, ndigits=digits),
 
map(operator, data.values()),
 
)
 
),
 
]
 
for col_name, operator, digits in operations
]
]
)
)
Loading