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

总结

分享:

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

相关推荐
曲幽10 小时前
FastAPI + PostgreSQL 实战:从入门到不踩坑,一次讲透
python·sql·postgresql·fastapi·web·postgres·db·asyncpg
用户83562907805115 小时前
使用 C# 在 Excel 中创建数据透视表
后端·python
码路飞18 小时前
FastMCP 实战:一个 .py 文件,给 Claude Code 装上 3 个超实用工具
python·ai编程·mcp
dev派20 小时前
AI Agent 系统中的常用 Workflow 模式(2) Evaluator-Optimizer模式
python·langchain
前端付豪21 小时前
AI 数学辅导老师项目构想和初始化
前端·后端·python
用户0332126663671 天前
将 PDF 文档转换为图片【Python 教程】
python
悟空爬虫1 天前
UV实战教程,我啥要从Anaconda切换到uv来管理包?
python
dev派1 天前
AI Agent 系统中的常用 Workflow 模式(1)
python·langchain
明月_清风1 天前
从“能用”到“专业”:构建生产级装饰器与三层逻辑拆解
后端·python
曲幽1 天前
数据库实战:FastAPI + SQLAlchemy 2.0 + Alembic 从零搭建,踩坑实录
python·fastapi·web·sqlalchemy·db·asyncio·alembic