根据path = r'data/1HP',编写一个滚动轴承数据集预处理代码,包含打上标签,one-hot编码以及归一化处理
时间: 2024-03-27 17:40:09 浏览: 85
轴承振动信号的归一化处理
好的,以下是基于Python和Pytorch的滚动轴承数据集预处理代码,包含打上标签,one-hot编码以及归一化处理:
```python
import torch
import pandas as pd
import numpy as np
from sklearn.preprocessing import LabelEncoder, OneHotEncoder, MinMaxScaler
# 定义数据集路径
path = r'data/1HP'
# 定义标签字典
label_dict = {'NORMAL': 0, 'IR': 1, 'OR': 2}
# 读取数据集
data = pd.read_csv(path, header=None)
# 打上标签
data[0] = data[0].apply(lambda x: label_dict[x])
# one-hot编码
enc = OneHotEncoder(sparse=False)
one_hot = enc.fit_transform(data.iloc[:, 0].values.reshape(-1, 1))
data = pd.concat([data, pd.DataFrame(one_hot)], axis=1)
data.drop(0, inplace=True, axis=1)
# 归一化处理
scaler = MinMaxScaler()
data.iloc[:, :-3] = scaler.fit_transform(data.iloc[:, :-3].values)
# 转换成Pytorch Tensor
data = torch.tensor(data.values, dtype=torch.float32)
```
以上代码将滚动轴承数据集进行了预处理,包含了标签打上、one-hot编码和归一化处理。最终得到的数据集是一个Pytorch Tensor,可以用于训练深度学习模型。
阅读全文