12345678910111213141516171819202122232425262728293031323334353637 |
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- # time: 2023/6/25 10:28
- # file: norm.py
- # author: David
- # company: shenyang JY
- import numpy as np
- import yaml
- class Normalize():
- def __init__(self):
- self.mean = {}
- self.std = {}
- def normalize(self, df):
- """
- 暂时不将C_TIME归一化
- :param dfs:
- :return:
- """
- if 'C_TIME' in df.columns:
- df.drop('C_TIME', axis=1, inplace=True)
- mean_dict = np.mean(df, axis=0) # 数据的均值
- std_dict = np.std(df, axis=0) # 标准差
- for k, v in mean_dict.to_dict().items():
- self.mean[k] = round(v, 3)
- for k, v in std_dict.to_dict().items():
- self.std[k] = round(v, 3)
- print("归一化参数,均值为:{},方差为:{}".format(self.mean, self.std))
- def save_yml(self, yml_dict, path):
- cfg = {}
- for k, v in yml_dict.items():
- cfg[k] = v
- with open(path, 'w') as f:
- yaml.safe_dump(cfg, f, default_flow_style=False)
|