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

总结

分享:

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

相关推荐
Java后端的Ai之路1 小时前
【Python 教程15】-Python和Web
python
冬奇Lab3 小时前
一天一个开源项目(第15篇):MapToPoster - 用代码将城市地图转换为精美的海报设计
python·开源
灰子学技术5 小时前
go response.Body.close()导致连接异常处理
开发语言·后端·golang
二十雨辰5 小时前
[python]-AI大模型
开发语言·人工智能·python
Yvonne爱编码5 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚5 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
你这个代码我看不懂5 小时前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言
pas1365 小时前
41-parse的实现原理&有限状态机
开发语言·前端·javascript
琹箐6 小时前
最大堆和最小堆 实现思路
java·开发语言·算法
前端摸鱼匠6 小时前
YOLOv8 环境配置全攻略:Python、PyTorch 与 CUDA 的和谐共生
人工智能·pytorch·python·yolo·目标检测