首页 > 编程知识 正文

cpk计算公式,cpk计算实例分析

时间:2023-05-04 09:06:01 阅读:247174 作者:2860

代码如下:

def cpk_calc(df_data: pd.DataFrame, usl, lsl): """ :param df_data: 数据dataframe :param usl: 数据指标上限 :param lsl: 数据指标下限 :return: """ sigma = 3 # 若下限为0, 则使用上限反转负值替代 if int(lsl) == 0: lsl = 0 - usl # 数据平均值 u = df_data.mean()[0] # 数据标准差 stdev = np.std(df_data.values, ddof=1) # 生成横轴数据平均分布 x1 = np.linspace(u - sigma * stdev, u + sigma * stdev, 1000) # 计算正态分布曲线 y1 = np.exp(-(x1 - u) ** 2 / (2 * stdev ** 2)) / (math.sqrt(2 * math.pi) * stdev) cpu = (usl - u) / (sigma * stdev) cpl = (u - lsl) / (sigma * stdev) # 得出cpk cpk = min(cpu, cpl) # 使用matplotlib画图 plt.xlim(x1[0] - 0.5, x1[-1] + 0.5) plt.plot(x1, y1) plt.hist(df_data.values, 15, density=True) plt.title("cpk={0}".format(cpk)) plt.show()

生成图例:

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。