• 大小: 0.23M
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-03-28
  • 语言: 其他
  • 标签: 其他  

资源简介

本资源介绍了两种pca基于python的故障诊断实现,一种是针对数据维数冗余的降维诊断,另一种是小数据维数的诊断,包含代码和数据集。

资源截图

代码片段和文件信息

from scipy import stats
import numpy as np
import math
import matplotlib.pyplot as plt
import pandas as pd
def PCA(NewXtran):
    size = np.shape(NewXtran)
    U S V = np.linalg.svd(NewXtran / math.sqrt(size[0] - 1))
    eigVals = S ** 2
    arraySum = sum(eigVals)
    tmpSum = 0
    n = 0
    for i in eigVals:
        tmpSum += i
        if tmpSum / arraySum < 0.85:
            n += 1
    lamda = eigVals[0:n + 1]
    n_eigVect = V[: 0:n + 1]
    f_eigVect = V[: n + 1:size[1]]
    return n lamda n_eigVect f_eigVect


# 离线训练
Xtran = np.genfromtxt(“d00_te.dat“)  # 导入训练数据
# print(Xtran)
size = np.shape(Xtran)  # 读取数据尺寸
mean = np.mean(Xtran axis=0)  # 平均值
std = np.std(Xtran axis=0)  # 方差
NewXtran = np.zeros((size[0] size[1]))  # 数据标准化
for i in range(size[1]):
    NewXtran[: i] = (Xtran[: i] - mean[i]) / std[i]
n lamda n_eigVect f_eigVect = PCA(NewXtran)  # PCA处理

# 计算T2控制线 @1
T2UCL = n * (size[0] - 1) * (size[0] + 1) * stats.f.ppf(0.99 n s

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-08-09 13:51  pca\
     目录           0  2018-08-09 13:50  pca\方法一\
     文件         127  2018-08-09 13:43  pca\方法一\label.csv
     文件        7225  2018-08-09 13:49  pca\方法一\PCA.Py
     文件        1742  2018-08-09 13:42  pca\方法一\test.csv
     文件        1449  2018-08-09 13:42  pca\方法一\train.csv
     目录           0  2018-08-09 13:53  pca\方法二\
     文件      799680  2018-07-02 15:33  pca\方法二\d00_te.dat
     文件      799680  2018-07-02 15:33  pca\方法二\d01_te.dat
     文件        2585  2018-08-09 13:53  pca\方法二\pca.py

评论

共有 条评论