【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()

总结

分享:

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

相关推荐
程序员三藏5 小时前
接口测试及常用接口测试工具总结
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
小二·7 小时前
Python Web 开发进阶实战 :AI 原生数字孪生 —— 在 Flask + Three.js 中构建物理世界实时仿真与优化平台
前端·人工智能·python
Whisper_Sy7 小时前
Flutter for OpenHarmony移动数据使用监管助手App实战 - 网络状态实现
android·java·开发语言·javascript·网络·flutter·php
Bony-7 小时前
Go语言垃圾回收机制详解与图解
开发语言·后端·golang
hmywillstronger8 小时前
【Rhino】【Python】 查询指定字段并cloud标注
开发语言·python
新缸中之脑8 小时前
Weave.js:开源实时白板库
开发语言·javascript·开源
我能坚持多久8 小时前
D16—C语言内功之数据在内存中的存储
c语言·开发语言
leo__5208 小时前
C#与三菱PLC串口通信源码实现(基于MC协议)
开发语言·c#
dyyx1118 小时前
如何从Python初学者进阶为专家?
jvm·数据库·python
二十雨辰8 小时前
[python]-函数
开发语言·python