【python实战】-- 计算指定excel文件指定行指定间隔为一组的CPK

系列文章目录

文章目录


前言

一、计算指定excel文件指定行指定间隔为一组的CPK

1.引入库

代码如下(示例):

python 复制代码
import numpy as np
import matplotlib.pyplot as plt
from openpyxl import load_workbook
import pandas as pd

def CPK(data,USL,LSL):
    mean = np.mean(data)
    std = np.std(data)
    cp = (USL - LSL)/(6*std)
    Cpu = (USL - mean)/(3*std)
    Cpl = (mean - LSL)/(3*std)
    Cpk = min(Cpu,Cpl)
    return Cpk

file_path = "Summaryout-5S1S2.xlsx"
df = pd.read_excel(file_path)
data = df.iloc[1,1:None]
column_count = df.shape[1]
interval = 60
x_axis = 1
Cpk_total = []
interval_total = []
print(column_count)
for i in range(1,column_count,interval):
    data_cpk = df.iloc[1,i:i+(interval-1)]
    Cpk_value = CPK(data_cpk,1.5,0)
    Cpk_total.append(Cpk_value)
    x_axis = x_axis + 1
    #print(x_axis)
    interval_total.append(x_axis)
    #print(Cpk_value)

x = interval_total
y = Cpk_total  
x_num = len(x) 
plt.plot(x,y)
plt.xticks(ticks=[j for j in range(x_num) if j % 1 == 0], labels = [j for j in range(x_num) if j % 1 == 0])
plt.title('CPK')
plt.xlabel('date')
plt.ylabel('Cpk_value')
plt.grid()  #添加网格线
plt.show()

总结

分享:

我试想自己将来会成为一个什么样的人,然后站在未来自己的立场上判断如何做决定,怎样行动,动态的调整自己的生活;

相关推荐
18你磊哥4 分钟前
chromedriver.exe的使用和python基本处理
开发语言·python
小坏讲微服务17 分钟前
Spring Cloud Alibaba 整合 Scala 教程完整使用
java·开发语言·分布式·spring cloud·sentinel·scala·后端开发
Kiri霧18 分钟前
Scala 循环控制:掌握 while 和 for 循环
大数据·开发语言·scala
闲人编程29 分钟前
Python的抽象基类(ABC):定义接口契约的艺术
开发语言·python·接口·抽象类·基类·abc·codecapsule
qq_1728055929 分钟前
Go 语言结构型设计模式深度解析
开发语言·设计模式·golang
vx_dmxq21132 分钟前
【微信小程序学习交流平台】(免费领源码+演示录像)|可做计算机毕设Java、Python、PHP、小程序APP、C#、爬虫大数据、单片机、文案
java·spring boot·python·mysql·微信小程序·小程序·idea
无垠的广袤1 小时前
【工业树莓派 CM0 NANO 单板计算机】本地部署 EMQX
linux·python·嵌入式硬件·物联网·树莓派·emqx·工业物联网
lkbhua莱克瓦241 小时前
集合进阶8——Stream流
java·开发语言·笔记·github·stream流·学习方法·集合
20岁30年经验的码农1 小时前
Java Elasticsearch 实战指南
java·开发语言·elasticsearch
雾岛听蓝1 小时前
C++ 类和对象(一):从概念到实践,吃透类的核心基础
开发语言·c++·经验分享·笔记