Prétraitements
Bilan de la réunion de lundi 15/04/2024
Il faut intégrer le code de Nour dans ce notebook
Lien notedbook : https://colab.research.google.com/drive/13p8E_YmWwedeF0qktLFrJMufNOK9hdsj?usp=sharing
Règle 1 : x1
- Si échantillon de données négatif alors multiplier par (-1)
L'idée est d'avoir des données positives sans perdre l'information s'il y a des valeurs négatives qui seront traitées après
Règle 2 Capteur HS
- Si les valeurs sont en dehors des bornes pendant 15 min alors le capteur est HS
Règle 3 : OutOfRange (mauvaises données)
- Si les données ne sont pas dans l'interval [0, 800] on prend la dernière données valide
Ex : 254;268;235;842;254;269 → 254;268;235;235;254;269
Règle 4 : Trous
- S'il y a des tous dans les données alors on comble la valeur par la dernière valeur valide
- Python :
def missed_data_process(data:pd.core.frame.DataFrame, freq='10S'): time_index = pd.date_range(start=data.index.min(), end=data.index.max(), freq=freq) data = data.resample(freq).interpolate(method='nearest') return data data = missed_data_process(data)
Règle 5 : Valeurs incohérentes
- techniquement la valeur est bonne [0, 800] mais physiologiquement impossible
- (règles à déterminer)
- ajouter un champ pour indiquer si les valeurs sont d'origines ou modifiées par un algo
Règle 6 : Transformation Gauss / Distance
- appliquer la règle et ajouter une colonne “distance” dans la table
- d = racine(1/gauss)
Règle 7 : normalisation
- Projeter les données dans un espace [0,1]
Règle 8 ... X
- Ajouter des métriques complémentaires
- Etat : filtration / évitement
- Activité : ouverture / fermeture
- Compléter avec d'autres règles / indicateurs
