Buscar

Gráficos de controle Xbarra e R, Xbarra e S, regras C1, C2 e C3 - python notebook

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

{
 "nbformat": 4,
 "nbformat_minor": 0,
 "metadata": {
 "colab": {
 "name": "CarlosEduardo05.ipynb",
 "provenance": [],
 "toc_visible": true
 },
 "kernelspec": {
 "name": "python3",
 "display_name": "Python 3"
 },
 "language_info": {
 "name": "python"
 }
 },
 "cells": [
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/"
 },
 "id": "nNk93jr48HJm",
 "outputId": "57b3e0b8-97c6-425f-ac8d-063754a3e6e7"
 },
 "source": [
 "from google.colab import drive\n",
 "drive.mount('/content/drive/')"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "stream",
 "text": [
 "Mounted at /content/drive/\n"
 ],
 "name": "stdout"
 }
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "4WyQYfJgH5k9"
 },
 "source": [
 "import pandas as pd\n",
 "import numpy as np\n",
 "import matplotlib.pyplot as plt"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "2Cu9daxyPqI1"
 },
 "source": [
 "#importando a tabela de parâmetros gráficos\n",
 "parametros_graf = pd.read_excel(\"/content/drive/MyDrive/2021.2/tec controle qualidade/TEP00120 - TABELAS.xlsx\", \n",
 " header = 2,\n",
 " sheet_name = \"Parâmetros gráficos\")\n",
 "#importando a Distruição W, segunda aba do mesmo arquivo onde consta os parâmetros gráficos\n",
 "dist_w = pd.read_excel(\"/content/drive/MyDrive/2021.2/tec controle qualidade/TEP00120 - TABELAS.xlsx\", \n",
 " header = 1,\n",
 " sheet_name = \"Distribuição W\")\n",
 "#preencher os NaN com zeros\n",
 "dist_w.fillna(0, inplace=True)"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "Gb6_nMIvSzC2"
 },
 "source": [
 "def chamar_parametro(parametro,n):\n",
 " \"\"\" atribuir o valor do parametro gráfico para determinado n a uma var\"\"\"\n",
 " #usamos n-2 porque o index começa no zero e a coluna n no dois \n",
 " var_grafica = parametros_graf[parametro].loc[n-2]\n",
 " return var_grafica"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "WrWkF4JQT61S"
 },
 "source": [
 "def df_mean_r_S(df):\n",
 " \"\"\"retorna uma cópia do df com as colunas Média, Amplitude e S\"\"\"\n",
 " df1 = df.copy()\n",
 " #criando uma coluna com a média das amostras linha a linha\n",
 " df1['Média'] = df[colunas].mean(axis=1)\n",
 " #criando uma coluna com a amplitude de cada linha\n",
 " df1['Amplitude'] = (df[colunas].max(axis=1) - df[colunas].min(axis=1))\n",
 " #criando uma coluna com a amplitude de cada linha\n",
 " df1['S'] = df[colunas].std(axis=1)\n",
 " return df1"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "O_zv4wxcWDcw"
 },
 "source": [
 "def plot_xbarra(df1,limites_xbarra):\n",
 " \"\"\"plotar Xbarra\"\"\"\n",
 " plt.plot(df1['Amostra'], df1['Média'])\n",
 " plt.hlines(limites_xbarra[0], xmin=df1['Amostra'][0], xmax = df1['Amostra'].iloc[-1], colors ='g')\n",
 " plt.hlines(limites_xbarra[1], xmin=df1['Amostra'][0], xmax = df1['Amostra'].iloc[-1], colors = 'y')\n",
 " plt.hlines(limites_xbarra[2], xmin=df1['Amostra'][0], xmax = df1['Amostra'].iloc[-1], colors = 'r')\n",
 "\n",
 " plt.title(\"Gráfico Xbarra\")\n",
 " plt.xlabel(\"Amostra\")\n",
 " plt.legend(('Xbarra','LM', 'LSC', 'LIC'),loc='best')\n",
 " plt.show()"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "DHJ5w0WTWINR"
 },
 "source": [
 "def plot_s(df1,limites_s):\n",
 " \"\"\"Plotar gráfico S\"\"\"\n",
 " plt.plot(df1['Amostra'], df1['S'])\n",
 " plt.hlines(limites_s[0], xmin=df1['Amostra'][0], xmax = df1['Amostra'].iloc[-1], colors ='g')\n",
 " plt.hlines(limites_s[1], xmin=df1['Amostra'][0], xmax = df1['Amostra'].iloc[-1], colors = 'y')\n",
 " plt.hlines(limites_s[2], xmin=df1['Amostra'][0], xmax = df1['Amostra'].iloc[-1], colors = 'r')\n",
 "\n",
 " plt.title(\"Gráfico S\")\n",
 " plt.xlabel(\"Amostra\")\n",
 " plt.ylabel(\"S\")\n",
 " plt.legend(('S','LM', 'LSC', 'LIC'),loc='best')\n",
 " plt.show()"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "bTQP83YxWtp3"
 },
 "source": [
 "def plot_r(df1,limites_R):\n",
 " plt.plot(df1['Amostra'], df1['Amplitude'])\n",
 " plt.hlines(limites_R[0], xmin=df1['Amostra'][0], xmax = df1['Amostra'].iloc[-1], colors ='g')\n",
 " plt.hlines(limites_R[1], xmin=df1['Amostra'][0], xmax = df1['Amostra'].iloc[-1], colors = 'y')\n",
 " plt.hlines(limites_R[2], xmin=df1['Amostra'][0], xmax = df1['Amostra'].iloc[-1], colors = 'r')\n",
 "\n",
 " plt.title(\"Gráfico R\")\n",
 " plt.xlabel(\"Amostra\")\n",
 " plt.ylabel(\"Amplitude R\")\n",
 " plt.legend(('R','LM', 'LSC', 'LIC'),loc='best')\n",
 " plt.show()"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "BxF572u_Txdu"
 },
 "source": [
 "#criando uma lista com o nome das colunas que contém os dados coletados, sem a coluna Amostra\n",
 "colunas = [\"Medida_\"+ str(n) for n in range(1,len(df_a.columns))]"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "R32Qx6JUHaLq"
 },
 "source": [
 "#1. Gerar os gráficos de controle"
 ]
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "9OO7gpkr8Mox"
 },
 "source": [
 "##a) ler o arquivo T5_A.xlsx de dados anexo (hipótese: dados de processo sob controle);"
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "Up3CTWivH_m6"
 },
 "source": [
 "df_a = pd.read_excel('/content/drive/MyDrive/2021.2/tec controle qualidade/T5_A.xlsx')"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "u7r3E2XEItfG"
 },
 "source": [
 "#primeira linha do df_a\n",
 "df_a.iloc[[0]]"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "AFtQ2IJFJuwH"
 },
 "source": [
 "#ultima linha do df_a\n",
 "df_a.iloc[[-1]]"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "gQH84HLjUVNb"
 },
 "source": [
 "df_a_mod = df_mean_r_S(df_a)"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/",
 "height": 131
 },
 "id": "jdoDnynRTfHM",
 "outputId": "77e66ad4-9699-4634-c01f-616976697e39"
 },
 "source": [
 "df_a_mod.head(2)"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "execute_result",
 "data": {
 "text/html": [
"<div>\n",
 "<style scoped>\n",
 " .dataframe tbody tr th:only-of-type {\n",
 " vertical-align: middle;\n",
 " }\n",
 "\n",
 " .dataframe tbody tr th {\n",
 " vertical-align: top;\n",
 " }\n",
 "\n",
 " .dataframe thead th {\n",
 " text-align: right;\n",
 " }\n",
 "</style>\n",
 "<table border=\"1\" class=\"dataframe\">\n",
 " <thead>\n",
 " <tr style=\"text-align: right;\">\n",
 " <th></th>\n",
 " <th>Amostra</th>\n",
 " <th>Medida_1</th>\n",
 " <th>Medida_2</th>\n",
 " <th>Medida_3</th>\n",
 " <th>Medida_4</th>\n",
 " <th>Medida_5</th>\n",
 " <th>Medida_6</th>\n",
 " <th>Medida_7</th>\n",
 " <th>Medida_8</th>\n",
 " <th>Medida_9</th>\n",
 " <th>Medida_10</th>\n",
 " <th>Medida_11</th>\n",
 " <th>Medida_12</th>\n",
 " <th>Medida_13</th>\n",
 " <th>Medida_14</th>\n",
 " <th>Média</th>\n",
 " <th>Amplitude</th>\n",
 " <th>S</th>\n",
 " </tr>\n",
 " </thead>\n",
 " <tbody>\n",
 " <tr>\n",
 " <th>0</th>\n",
 " <td>1</td>\n",
 " <td>68.776</td>\n",
 " <td>65.887</td>\n",
 " <td>72.639</td>\n",
 " <td>63.674</td>\n",
 " <td>65.081</td>\n",
 " <td>66.509</td>\n",
 " <td>66.147</td>\n",
 " <td>70.475</td>\n",
 " <td>67.467</td>\n",
 " <td>66.468</td>\n",
 " <td>64.262</td>\n",
 " <td>65.278</td>\n",
 " <td>67.323</td>\n",
 " <td>65.877</td>\n",
 " <td>66.847357</td>\n",
 " <td>8.965</td>\n",
 " <td>2.417607</td>\n",
 " </tr>\n",
 " <tr>\n",
 " <th>1</th>\n",
 " <td>2</td>\n",
 " <td>70.839</td>\n",
 " <td>68.170</td>\n",
 " <td>68.924</td>\n",
 " <td>66.326</td>\n",
 " <td>70.862</td>\n",
 " <td>67.546</td>\n",
 " <td>67.143</td>\n",
 " <td>69.989</td>\n",
 " <td>64.866</td>\n",
 " <td>64.830</td>\n",
 " <td>66.582</td>\n",
 " <td>70.116</td>\n",
 " <td>68.511</td>\n",
 " <td>65.594</td>\n",
 " <td>67.878429</td>\n",
 " <td>6.032</td>\n",
 " <td>2.094584</td>\n",
 " </tr>\n",
 " </tbody>\n",
 "</table>\n",
 "</div>"
 ],
 "text/plain": [
 " Amostra Medida_1 Medida_2 ... Média Amplitude S\n",
 "0 1 68.776 65.887 ... 66.847357 8.965 2.417607\n",
 "1 2 70.839 68.170 ... 67.878429 6.032 2.094584\n",
 "\n",
 "[2 rows x 18 columns]"
 ]
 },
 "metadata": {
 "tags": []
 },
 "execution_count": 21
 }
 ]
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "kl8fqdcyHS6_"
 },
 "source": [
 "##b) identificar o tamanho das amostras dos dados;"
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/"
 },
 "id": "B9FX8fmQJyen",
 "outputId": "69946da8-18cb-4ad9-f8af-cc88e7f1455a"
 },
 "source": [
 "#definindo var n com o tamanho das amostras n, sendo a contagem das colunas sem a primeira col \"Amostra\"\n",
 "n_a = len(df_a.iloc[:,1:].columns)\n",
 "\n",
 "print(f'tamanho de cada amostra do df_a: {n_a}')"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "stream",
 "text": [
 "tamanho de cada amostra do df_a: 14\n"
 ],
 "name": "stdout"
 }
 ]
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "ISXYOAJiHeDH"
 },
 "source": [
 "##c) se a amostra for menor que 11 gerar os gráficos Xbarra e R e, caso contrário, gerar os gráficos Xbarra e S:\n"
 ]
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "7zzuulcRHiL7"
 },
 "source": [
 "###c.1) calcular as linhas LM, LIC e LSC de cada gráfico;"
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "Eqn3CsGPMFOA"
 },
 "source": [
 "def limites_de_controle(df):\n",
 " \n",
 " \"\"\"Calcula os limites de controle de Xbarra e R para amostras menores que 11 e Xbarra e S caso contrário\"\"\"\n",
 " #tamanho das amostras\n",
 " n = len(df_a_mod[colunas].columns)\n",
 "\n",
 " if n >= 11:\n",
 " \n",
 " \"\"\"definir os limites de controle de S\"\"\"\n",
 " #salvando os parametros gráficos \"B3\" e \"B4\" em vars com o mesmo nome. \n",
 " B3 = chamar_parametro(\"B3\",n)\n",
 " B4 = chamar_parametro(\"B4\",n)\n",
 " #definindo LMs = Sbarra\n",
 " LMs = df[\"S\"].mean(axis=0)\n",
 " #Definindo LSCs = B3*Sbarra\n",
 " LSCs = B4*LMs\n",
 " #Definindo LICx = B4*Sbarra\n",
 " LICs = B3*LMs\n",
 " limites_aux = [LICs, LMs, LSCs]\n",
 "\n",
 " \"\"\"definir os limites de controle de Xbarra (S)\"\"\"\n",
 " #salvando o parametro gráfico \"A3\" em uma var com o mesmo nome. \n",
 " A3 = chamar_parametro(\"A3\",n)\n",
 " Sbarra = df[\"S\"].mean(axis=0)\n",
 " #definindo LMx = Xbarra-barra\n",
 " LMx = df[\"Média\"].mean(axis=0)\n",
 " #Definindo LSCx = Xbarra-barra + A3*Sbarra\n",
 " LSCx = LMx + A3*Sbarra\n",
 " #Definindo LICx = Xbarra-barra - A3*Sbarra\n",
 " LICx = LMx - A3*Sbarra\n",
 " limites_x = [LICx, LMx, LSCx]\n",
 "\n",
 " print('Amostras maior ou igual a 11, retornando os limites de Xbarra e S')\n",
 "\n",
 " elif n < 11:\n",
 " \"\"\"definir os limites de controle de R\"\"\"\n",
 " #salvando os parametros gráficos \"D3\" e \"D4\" em variáveis com o mesmo nome. \n",
 " D3 = chamar_parametro(\"D3\",n)\n",
 " D4 = chamar_parametro(\"D4\",n)\n",
 " #definindo LM = Rbarra\n",
 " LM = df[\"Amplitude\"].mean(axis=0)\n",
 " #Definindo LSC = Xbarra-barra + A2*Rbarra\n",
 " LSC = LM*D4\n",
 " #Definindo LIC = Xbarra-barra - A2*Rbarra\n",
 " LIC = LM*D3\n",
 " #se LIC < 0, deve-se considerar = 0\n",
 " if LIC < 0:\n",
 " LIC = 0\n",
 " limites_aux = [LIC, LM, LSC]\n",
 "\n",
 " \"\"\"definir os limites de controle de Xbarra (R)\"\"\"\n",
 " #definindo Rbarra\n",
 " Rbarra = df[\"Amplitude\"].mean(axis=0)\n",
 " #salvando o parametro gráfico \"A2\" em uma var com o mesmo nome. \n",
 " A2 = chamar_parametro(\"A2\",n)\n",
 " #definindo LMx = Xbarra-barra\n",
 " LMx = df[\"Média\"].mean(axis=0)\n",
 " #Definindo LSCx = Xbarra-barra + A2*Rbarra\n",
" LSCx = LMx + A2*Rbarra\n",
 " #Definindo LICx = Xbarra-barra - A2*Rbarra\n",
 " LICx = LMx - A2*Rbarra\n",
 " limites_x = [LICx, LMx, LSCx]\n",
 "\n",
 " print('Amostras menores que 11, retornando os limites de Xbarra e R')\n",
 " return limites_x, limites_aux"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/"
 },
 "id": "IVZiIxobSnpp",
 "outputId": "b4f87320-41a2-49f3-af1a-c6abf3e6a411"
 },
 "source": [
 "limites_x, limites_aux = limites_de_controle(df_a_mod)"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "stream",
 "text": [
 "Amostras maior ou igual a 11, retornando os limites de Xbarra e S\n"
 ],
 "name": "stdout"
 }
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/"
 },
 "id": "Ux2bgqiMVDcP",
 "outputId": "a7690a0d-0943-4194-bf42-763be3d5fc69"
 },
 "source": [
 "print(limites_x)\n",
 "print(limites_aux)"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "stream",
 "text": [
 "[65.28918490735059, 67.33558163265305, 69.3819783579555]\n",
 "[1.016936438767196, 2.5047695536137833, 3.992602668460371]\n"
 ],
 "name": "stdout"
 }
 ]
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "1kwBigL8HlYM"
 },
 "source": [
 "###c.2) plotar os dados utilizados para calcular as linhas nos respectivos gráficos e verificar se há pontos fora da região de controle calculada;\n"
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/",
 "height": 295
 },
 "id": "348FfhWiV122",
 "outputId": "423af5b9-3972-4986-b414-a3a9b3244638"
 },
 "source": [
 "plot_xbarra(df_a_mod,limites_x)"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "display_data",
 "data": {
 "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXAAAAEWCAYAAAB/tMx4AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nO3dd3jc1ZXw8e+ZUS+jYsmybMuWC664FzAYYjBhScIuZSFAGmVDEhKSLClANo0kmwqbJdlNWSABkpcsCY4hkIRsSCGhWrZxxQUXVVuyyqjOqM99//jNyLI8kmZGU/STzud5/FgaTbkae87cOffcc8UYg1JKKftxJHoASimlIqMBXCmlbEoDuFJK2ZQGcKWUsikN4EopZVMawJVSyqY0gKtxT0R+LyJ3DLnsGhGpFpEOEVklIm+KyKY4j+sxEfn3eD6mUoNpAFcxJyI3isg2EfGISL3/64+KiIRw2w8AbmPMj4b86AHgTmNMljFmlzFmqTHmxSiOOUtEKkTkvYMuyxaRKhG5LlqPo9RYaABXMSUinwa+B9wPTAOKgI8AFwIpw9zGOejbLODDQa42G3gzqoMdxBjT4X/cB0Wk0H/xd4Adxpgt0X48EUka8r2IiL4+1Yj0P4iKGRHJAb4KfNQYs8UY024su4wx7zXGdPuv95iI/MifKvEAl4jIu0RkF/At4JCI3Oe/bqqIdABOYI+IHPNfXiEil/m/dorIv4nIMRFpF5GdIlLi/9kFIrJdRFr9f18w3PiNMf8H/A74vj89827go0OuViAiL/gf528iMnvQ7/89f5qnzT+Giwb97D4R2SIi/09E2oBbRORFEfm6iLwCeIG5InKriBz03/9xEQn2ZqYmK2OM/tE/MfkDXAH0AUmjXO8xoBVrVu4A0oBLgWX+75cD9cDVg25jgPmDvq8ALvN//VlgH7AQEGAFMAXIB5qB9wNJwE3+76eMMLY8oBZoBG4NMu524GIgFeuTxsuDfv4+/+MmAZ8G6oA0/8/uA3qBq/2/YzrwIlAFLPXfJhl4FzDP/3u8DSuwr070v63+GR9/dAauYqkAaDTG9AUuEJFXRaRFRDpF5OJB1/2NMeYVY4zPGNNljPmLMWaf//u9wC+wAlgoPgh8wRhz2Fj2GGOasILhEWPMz40xfcaY/wUOAf843B0ZY5qxUjUZwNYgV/mdMebvxvo08XlgQ2C2b4z5f8aYJv9j/QdWkF846LavGWOe8f+Onf7LHjPGvOm/Ta8x5nfGmGP+3+NvwB+Bi1AKTaGo2GrCSjEM5HeNMRcYY3L9Pxv8/6968A1FZLWIPO9PjVQCt2C9IYSiBDgW5PLpQOWQyyqBGcPdkYi8DygF/gR8O8hVBsZtrLy52/84iMhn/OmPVhFpAXKG/A5n/M7BLhORd4jI6yLi9t/HOwn9eVATnAZwFUuvAd3AVSFcd2hbzF8Cv8VKk8wGHsdKI4SiGivtMNRJrMXPwWYBJ4LdiYhMBf4TuB1rQfPdg/PYfiWDrp+FlaY56b/e3Vh58zz/m1brkN8hWCvQgctEJBX4NVbFTZH/Pn5P6M+DmuA0gKuYMca0AF8Bfigi1/nL8BwishLIHOXmuUCnMaZPRNZj5atD9QjwNRE5x1/NsVxEpmAFvwUi8h4RSRKRG4AlWG8Uwfw38Iwx5q/GmFqsgPywP7AGvFNENopICvA14HVjTDWQjZX/bwCSRORLgCuM3wGsKp1U/330icg7gMvDvA81gWkAVzFljPkO8Cms4HfK/+d/gHuAV0e46R3Al0WkHfgS8KswHva7/uv/EWgDfgKk+/PgV2ItKDb5x3SlMaZx6B2IyNXARqwF0cDv8gjWLP5Lg676C+DLWKmTNVgLlwD/B/wBeAsrTdNF8JTJsIwx7cAn/L9LM/Ae4Nlw7kNNbGKMHuiglFJ2pDNwpZSyKQ3gSillUxrAlVLKpjSAK6WUTSWNfpXoKSgoMKWlpfF8SKWUsr2dO3c2GmMKh14e1wBeWlrKjh074vmQSille/7dyGfRFIpSStmUBnCllLIpDeBKKWVTcc2BK6VUQG9vLzU1NXR1dSV6KONGWloaM2fOJDk5OaTrawBXSiVETU0N2dnZlJaWEsLxqBOeMYampiZqamqYM2dOSLfRFIpSKiG6urqYMmWKBm8/EWHKlClhfSLRAK6UShgN3mcK9/mwTwpl06ZEj0ApFU1f/jI4JtEccuHC0a8Tpkn07Cml1Jmqa2uZs3kz7pYWAJpbW5mzeTOPbd3KlR/+cIJHNzr7zMBffDHRI1BKRdPBgzGZlYajZOFC7vjEJ7j3Jz/hoYce4t4Pf5gPfexjlG7YAK+8EvH4+vv7cTqdZ34frUEPojNwpdSkdtddd/H666/z4IMP8vLLL/OZz3wGgLa2Nt71rnexcOFCPvKRj+Dz+QC44447WLt2LUuXLuXLX/7ywP2UlpZyzz33sHr1ap566qmzvn/44YdZt24dK1as4J//+Z/xer1jHrt9ZuBKqQnrK8+9yYGTbVG9zyXTXXz5H5eOer3k5GTuv/9+rrjiCv74xz8O1GCXlZVx4MABZs+ezRVXXMHWrVu57rrr+PrXv05+fj79/f1s3ryZvXv3snz5cgCmTJnCG2+8AcC99957xvdNTU3cfvvtAHzhC1/gJz/5CR//+MfH9DvqDFwpNek9//zzFBcXs3///oHL1q9fz9y5c3E6ndx00028/PLLAPzqV79i9erVrFq1ijfffJMDBw4M3OaGG244434Hf79//34uuugili1bxhNPPMGbb7455nHrDFwplXChzJRjZffu3bzwwgu8/vrrbNy4kRtvvBE4u6RPRCgvL+eBBx5g+/bt5OXlccstt5xRt52ZmXnGbQZ/f8stt/DMM8+wYsUKHnvsMV6MwrqezsCVUpOWMYY77riDBx98kFmzZvHZz352IAdeVlZGeXk5Pp+PX/7yl2zcuJG2tjYyMzPJycnh1KlTPP/88yE/Vnt7O8XFxfT29vLEE09EZfw6A1dKTVoPP/wws2bN4u1vfzsAH/3oR3n00Uf529/+xrp167jzzjs5evQol1xyCddccw0Oh4NVq1axaNEiSkpKuPDCC0N+rK997Wucd955FBYWct5559He3j7m8YsxZsx3Eqq1a9caPdBBKQVw8OBBFi9enOhhjDvBnhcR2WmMWTv0uppCUUopm9IArpRSNqUBXCmlbEoDuFJK2ZQGcKWUsikN4EopZVMawJVSk1ZWVtZZl913332ICEePHh247MEHH0REGG9l0CEFcBHJFZEtInJIRA6KyAYRWSEir4nIPhF5TkRcsR6sUkrFw7Jly3jyyScHvn/qqadYujRx2/2HE+oM/HvAH4wxi4AVwEHgEeBeY8wy4Gngs7EZolJKxdfVV1/Nb37zGwCOHTtGTk4OBQUFCR7V2UbdSi8iOcDFwC0AxpgeoEdEFgB/91/tBeD/gC/GZphKqYlu02Obonp/L97yYsS3dblclJSUsH//fn7zm99www038Oijj0ZvcFESygx8DtAAPCoiu0TkERHJBN4ErvJf53qgJNiNReRDIrJDRHY0NDREZdBKKRVrN954I08+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\n",
"text/plain": [
 "<Figure size 432x288 with 1 Axes>"
 ]
 },
 "metadata": {
 "tags": [],
 "needs_background": "light"
 }
 }
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/",
 "height": 295
 },
 "id": "gtbb_1M6XEtJ",
 "outputId": "e8623230-a0c9-4021-e5f7-b4798bba11dc"
 },
 "source": [
 "plot_s(df_a_mod,limites_aux)"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "display_data",
 "data": {
 "image/png": "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\n",
"text/plain": [
 "<Figure size 432x288 with 1 Axes>"
 ]
 },
 "metadata": {
 "tags": [],
 "needs_background": "light"
 }
 }
 ]
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "ScCj0SIGHo23"
 },
 "source": [
 "###c.3) caso haja pontos fora da região, eliminar estes pontos dos dados e repetir o procedimento até todos os pontos estarem dentro da região de controle calculada.\n"
 ]
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "LoGXk8_NXra4"
 },
 "source": [
 "Os gráficos de Xbarra e S não apresentam pontos fora dos limites de controle. Caso apresentassem, as funções abaixo removem um outlier a cada vez que são rodadas. "
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "LcluZT0fbNSZ"
 },
 "source": [
 "def elimina_outlier_xbarra(df1,limites_xbarra):\n",
 " \"\"\"elimina uma amostra fora dos limites de controle de xbarra, se houver alguma\"\"\"\n",
 "\n",
 " #identificando a linha com maior valor na coluna \n",
 " amostra_ruim = df1[df1['Média'] == df1['Média'].max(axis=0)]\n",
 " #checando se o ponto com maior valor está acima do limite de controle\n",
 " if amostra_ruim['Média'].values[0] > float(limites_xbarra[2]):\n",
 " #cria cópia do df para evitar perder dado por erro de script\n",
 " df2 = df1.copy()\n",
 " df2.drop(df2.index[amostra_ruim[\"Amostra\"]-1], inplace=True) \n",
 " print('há pontos acima dos limites de controle')\n",
 " return df2\n",
 " else:\n",
 " print('não há pontos acima dos limites de controle') \n",
 "\n",
 " #identificando a linha com menor valor na coluna \n",
 " amostra_ruim = df1[df1['Média'] == df1['Média'].min(axis=0)]\n",
 " #checando se o ponto com maior valor está abaixo do limite de controle\n",
 " if amostra_ruim['Média'].values[0] < float(limites_xbarra[0]):\n",
 " #cria cópia do df para evitar perder dado por erro de script\n",
 " df2 = df1.copy()\n",
 " print(f'há pontos abaixo dos limites de controle, amostra: {amostra_ruim[\"Amostra\"].values} eliminada')\n",
 " df2.drop(df2.index[amostra_ruim[\"Amostra\"]-1], inplace=True) \n",
 " return df2\n",
 " else:\n",
 " print('não há pontos abaixo dos limites de controle') \n",
 "\n",
 "\n",
 "def elimina_outlier_s(df1,limites_s):\n",
 " \"\"\"elimina uma amostra fora dos limites de controle de s, se houver alguma\"\"\"\n",
 "\n",
 " #identificando a linha com maior valor na coluna \n",
 " amostra_ruim = df1[df1['S'] == df1['S'].max(axis=0)]\n",
 " #checando se o ponto com maior valor está acima do limite de controle\n",
 " if amostra_ruim['S'].values[0] > float(limites_s[2]):\n",
 " #cria cópia do df para evitar perder dado por erro de script\n",
 " df2 = df1.copy()\n",
 " print(f'há pontos acima dos limites de controle, amostra: {amostra_ruim[\"Amostra\"].values} eliminada')\n",
 " df2.drop(df2.index[amostra_ruim[\"Amostra\"]-1], inplace=True) \n",
 " return df2\n",
 " else:\n",
 " print('não há pontos acima dos limites de controle') \n",
 "\n",
 " #identificando a linha com menor valor na coluna \n",
 " amostra_ruim = df1[df1['S'] == df1['S'].min(axis=0)]\n",
 " #checando se o ponto com maior valor está abaixo do limite de controle\n",
 " if amostra_ruim['S'].values[0] < float(limites_s[0]):\n",
 " #cria cópia do df para evitar perder dado por erro de script\n",
 " df2 = df1.copy()\n",
 " print(f'há pontos abaixo dos limites de controle, amostra: {amostra_ruim[\"Amostra\"].values} eliminada')\n",
 " df2.drop(df2.index[amostra_ruim[\"Amostra\"]-1], inplace=True) \n",
 " return df2\n",
 " else:\n",
 " print('não há pontos abaixo dos limites de controle') "
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/"
 },
 "id": "_YQAS2rMcUgh",
 "outputId": "536618d6-1f3d-43a9-d1cd-65a4c88e5c9b"
 },
 "source": [
 "elimina_outlier_s(df_a_mod,limites_aux)"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "stream",
 "text": [
 "não há pontos acima dos limites de controle\n",
 "não há pontos abaixo dos limites de controle\n"
 ],
 "name": "stdout"
 }
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/"
 },
 "id": "nB0TRCmfdRsH",
 "outputId": "53aa8e38-ea9b-4a1d-f594-df960888e451"
 },
 "source": [
 "elimina_outlier_xbarra(df_a_mod, limites_x)"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "stream",
 "text": [
 "não há pontos acima dos limites de controle\n",
 "não há pontos abaixo dos limites de controle\n"
 ],
 "name": "stdout"
 }
 ]
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "t2qxeqtjHr4k"
 },
 "source": [
 "#2. Verificar se o processo está sob controle:\n"
 ]
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "AhWMlIKHHvJT"
 },
 "source": [
 "##a) ler o arquivo de dados T5_B.xlsx anexo (dados obtidos após terem sido obtidos os gráficos de controle);\n"
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "q_x2B3adL-Ri"
 },
 "source": [
 "df_b = pd.read_excel('/content/drive/MyDrive/2021.2/tec controle qualidade/T5_B.xlsx')"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/",
 "height": 131
 },
 "id": "oko9q0R-e43K",
 "outputId": "32770977-118f-4ef5-c432-b637662f4eb9"
 },
 "source": [
 "df_b.head(2)"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "execute_result",
 "data": {
 "text/html": [
 "<div>\n",
 "<style scoped>\n",
 " .dataframe tbody tr th:only-of-type {\n",
 " vertical-align: middle;\n",
 " }\n",
 "\n",
 " .dataframe tbody tr th {\n",
 " vertical-align: top;\n",
 " }\n",
 "\n",
 " .dataframe thead th {\n",
 " text-align: right;\n",
 " }\n",
 "</style>\n",
 "<table border=\"1\" class=\"dataframe\">\n",
 " <thead>\n",
 " <tr style=\"text-align: right;\">\n",
 " <th></th>\n",
 " <th>Amostra</th>\n",
 " <th>Medida_1</th>\n",
 " <th>Medida_2</th>\n",
 " <th>Medida_3</th>\n",
 " <th>Medida_4</th>\n",
 " <th>Medida_5</th>\n",
 " <th>Medida_6</th>\n",
 " <th>Medida_7</th>\n",
 " <th>Medida_8</th>\n",
 " <th>Medida_9</th>\n",
 " <th>Medida_10</th>\n",
 " <th>Medida_11</th>\n",
 " <th>Medida_12</th>\n",
 " <th>Medida_13</th>\n",
 " <th>Medida_14</th>\n",
 " </tr>\n",
 " </thead>\n",
" <tbody>\n",
 " <tr>\n",
 " <th>0</th>\n",
 " <td>51</td>\n",
 " <td>65.816</td>\n",
 " <td>59.641</td>\n",
 " <td>66.138</td>\n",
 " <td>63.809</td>\n",
 " <td>64.739</td>\n",
 " <td>64.773</td>\n",
 " <td>66.47</td>\n",
 " <td>64.048</td>\n",
 " <td>65.929</td>\n",
 " <td>65.003</td>\n",
 " <td>64.514</td>\n",
 " <td>70.521</td>\n",
 " <td>66.733</td>\n",
 " <td>63.751</td>\n",
 " </tr>\n",
 " <tr>\n",
 " <th>1</th>\n",
 " <td>52</td>\n",
 " <td>66.123</td>\n",
 " <td>65.561</td>\n",
 " <td>65.423</td>\n",
 " <td>70.915</td>\n",
 " <td>70.748</td>\n",
 " <td>68.765</td>\n",
 " <td>71.01</td>\n",
 " <td>71.742</td>\n",
 " <td>67.607</td>\n",
 " <td>68.411</td>\n",
 " <td>66.556</td>\n",
 " <td>68.076</td>\n",
 " <td>64.094</td>\n",
 " <td>66.183</td>\n",
 " </tr>\n",
 " </tbody>\n",
 "</table>\n",
 "</div>"
 ],
 "text/plain": [
 " Amostra Medida_1 Medida_2 ... Medida_12 Medida_13 Medida_14\n",
 "0 51 65.816 59.641 ... 70.521 66.733 63.751\n",
 "1 52 66.123 65.561 ... 68.076 64.094 66.183\n",
 "\n",
 "[2 rows x 15 columns]"
 ]
 },
 "metadata": {
 "tags": []
 },
 "execution_count": 31
 }
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "j6vLPIkje7Rk"
 },
 "source": [
 "#número de amostras no df\n",
 "len_df_b = len(df_b)"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "PZF3UDKxfCyT"
 },
 "source": [
 "#adiciona as colunas \"Média\", \"Amplitude\" e \"S\"\n",
 "df_b_mod = df_mean_r_S(df_b)"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/",
 "height": 131
 },
 "id": "6NspFsLMfRcU",
 "outputId": "e7fdc6b7-b663-41af-b07b-d6dcffcda5fb"
 },
 "source": [
 "df_b_mod.head(2)"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "execute_result",
 "data": {
 "text/html": [
 "<div>\n",
 "<style scoped>\n",
 " .dataframe tbody tr th:only-of-type {\n",
 " vertical-align: middle;\n",
 " }\n",
 "\n",
 " .dataframe tbody tr th {\n",
 " vertical-align: top;\n",
 " }\n",
 "\n",
 " .dataframe thead th {\n",
 " text-align: right;\n",
 " }\n",
 "</style>\n",
 "<table border=\"1\" class=\"dataframe\">\n",
 " <thead>\n",
 " <tr style=\"text-align: right;\">\n",
 " <th></th>\n",
 " <th>Amostra</th>\n",
 " <th>Medida_1</th>\n",
 " <th>Medida_2</th>\n",
 " <th>Medida_3</th>\n",
 " <th>Medida_4</th>\n",
 " <th>Medida_5</th>\n",
 " <th>Medida_6</th>\n",
 " <th>Medida_7</th>\n",
 " <th>Medida_8</th>\n",
 " <th>Medida_9</th>\n",
 " <th>Medida_10</th>\n",
 " <th>Medida_11</th>\n",
 " <th>Medida_12</th>\n",
 " <th>Medida_13</th>\n",
 " <th>Medida_14</th>\n",
 " <th>Média</th>\n",
 " <th>Amplitude</th>\n",
 " <th>S</th>\n",
 " </tr>\n",
 " </thead>\n",
 " <tbody>\n",
 " <tr>\n",
 " <th>0</th>\n",
 " <td>51</td>\n",
 " <td>65.816</td>\n",
 " <td>59.641</td>\n",
 " <td>66.138</td>\n",
 " <td>63.809</td>\n",
 " <td>64.739</td>\n",
 " <td>64.773</td>\n",
 " <td>66.47</td>\n",
 " <td>64.048</td>\n",
 " <td>65.929</td>\n",
 " <td>65.003</td>\n",
 " <td>64.514</td>\n",
 " <td>70.521</td>\n",
 " <td>66.733</td>\n",
 " <td>63.751</td>\n",
 " <td>65.134643</td>\n",
 " <td>10.880</td>\n",
 " <td>2.339877</td>\n",
 " </tr>\n",
 " <tr>\n",
 " <th>1</th>\n",
 " <td>52</td>\n",
 " <td>66.123</td>\n",
 " <td>65.561</td>\n",
 " <td>65.423</td>\n",
 " <td>70.915</td>\n",
 " <td>70.748</td>\n",
 " <td>68.765</td>\n",
 " <td>71.01</td>\n",
 " <td>71.742</td>\n",
 " <td>67.607</td>\n",
 " <td>68.411</td>\n",
 " <td>66.556</td>\n",
 " <td>68.076</td>\n",
 " <td>64.094</td>\n",
 " <td>66.183</td>\n",
 " <td>67.943857</td>\n",
 " <td>7.648</td>\n",
 " <td>2.429591</td>\n",
 " </tr>\n",
 " </tbody>\n",
 "</table>\n",
 "</div>"
 ],
 "text/plain": [
 " Amostra Medida_1 Medida_2 ... Média Amplitude S\n",
 "0 51 65.816 59.641 ... 65.134643 10.880 2.339877\n",
 "1 52 66.123 65.561 ... 67.943857 7.648 2.429591\n",
 "\n",
 "[2 rows x 18 columns]"
 ]
 },
 "metadata": {
 "tags": []
 },
 "execution_count": 34
 }
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/"
 },
 "id": "Bgl7k_E-Ln7h",
 "outputId": "3a859cb8-5710-474e-a852-8236b25cccaa"
 },
 "source": [
 "n_b = len(df_b_mod[colunas].columns)\n",
 "print(f'tamanho das amostras do df_b: {n_b}')"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "stream",
 "text": [
 "tamanho das amostras do df_b: 14\n"
 ],
 "name": "stdout"
 }
 ]
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "WXXlJpatHxkv"
 },
 "source": [
 "##b) plotar os valores de Xbarra e R ou S nos gráficos de controle obtidos no item 1\n"
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/",
 "height": 295
 },
 "id": "iLLhvHt2eHif",
 "outputId": "e7095e9b-628b-40e3-c493-d17405cd41f3"
 },
 "source": [
 "#plotando os dados de B nos limites já calculados com os dados de A\n",
 "plot_xbarra(df_b_mod,limites_x)"
 ],
 "execution_count": null,
 "outputs":
[
 {
 "output_type": "display_data",
 "data": {
 "image/png": "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\n",
"text/plain": [
 "<Figure size 432x288 with 1 Axes>"
 ]
 },
 "metadata": {
 "tags": [],
 "needs_background": "light"
 }
 }
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/",
 "height": 295
 },
 "id": "xBKkx6nsh0cU",
 "outputId": "d1b3bd6d-53a0-496f-e956-f0bee826ca2a"
 },
 "source": [
 "plot_s(df_b_mod,limites_aux)"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "display_data",
 "data": {
 "image/png": "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\n",
"text/plain": [
 "<Figure size 432x288 with 1 Axes>"
 ]
 },
 "metadata": {
 "tags": [],
 "needs_background": "light"
 }
 }
 ]
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "Ic0We-LuH0hz"
 },
 "source": [
 "##c) criar uma rotina que identifique a ocorrência das regras C1, C2 e C3 no gráfico de Xbarra, apontando o tipo de regra e em que amostra(s) está ocorrendo."
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "XTbaavfQYhic"
 },
 "source": [
 "def regras_c(df,limites,nivel_c):\n",
 " \"\"\"rotina para ocorrência das regras C1, C2 e C3\"\"\"\n",
 " lista_todos, lista_menores, lista_maiores = [], [], []\n",
 " \n",
 " #um loop para cada amostra\n",
 " for i in range(len_df_b):\n",
 " media_amostra = df.loc[i,'Média']\n",
 " if media_amostra >= limites[2] or media_amostra <= limites[0]:\n",
 " lista_todos.append(df.loc[i,'Amostra'])\n",
 " if media_amostra <= limites[0]:\n",
 " lista_menores.append(df.loc[i,'Amostra'])\n",
 " if media_amostra >= limites[2]:\n",
 " lista_maiores.append(df.loc[i,'Amostra'])\n",
 "\n",
 " return print(f'Ocorrências de {nivel_c}: \\n-Amostras fora dos limites: {lista_todos}\\n-Amostras abaixo do limite inferior: {lista_menores}\\n-Amostras acima do limite superior: {lista_maiores}')\n",
 " "
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "6SDZXbVxZcn1"
 },
 "source": [
 "##C1"
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/"
 },
 "id": "KpNcbG6ipQJt",
 "outputId": "960b2312-1b89-4f67-9261-92250dd90b31"
 },
 "source": [
 "regras_c(df_b_mod,limites_x,'C1')"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "stream",
 "text": [
 "Ocorrências de C1: \n",
 "-Amostras fora dos limites: [51, 56, 57, 59, 60]\n",
 "-Amostras abaixo do limite inferior: [51]\n",
 "-Amostras acima do limite superior: [56, 57, 59, 60]\n"
 ],
 "name": "stdout"
 }
 ]
 },
 {
 "cell_type": "markdown",
 "metadata": {
 "id": "Lj6iIn7xaESW"
 },
 "source": [
 "##C2"
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "id": "aGvL4zYXwDRJ"
 },
 "source": [
 "#calculando os limites de 2 sigma com \n",
 "def limites_controle_2sigma(limites_x):\n",
 " LSC2 = 2*(limites_x[2] - limites_x[1])*1/3 + limites_x[1]\n",
 " LIC2 = -2*(limites_x[1] - limites_x[0])*1/3 + limites_x[1]\n",
 " LM = limites_x[1]\n",
 " #retorna nesse formato para ser usado na função regras_c()\n",
 " return LIC2, LM, LSC2"
 ],
 "execution_count": null,
 "outputs": []
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/"
 },
 "id": "ev7J1d2dwJHx",
 "outputId": "3226b656-3bc8-4735-d214-1205f4e39b51"
 },
 "source": [
 "limites_2 = limites_controle_2sigma(limites_x)\n",
 "limites_2"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "execute_result",
 "data": {
 "text/plain": [
 "(65.97131714911808, 67.33558163265305, 68.69984611618801)"
 ]
 },
 "metadata": {
 "tags": []
 },
 "execution_count": 105
 }
 ]
 },
 {
 "cell_type": "code",
 "metadata": {
 "colab": {
 "base_uri": "https://localhost:8080/"
 },
 "id": "UOaB-r4X1TYl",
 "outputId": "c572f737-060a-44cb-ea63-4393094590ab"
 },
 "source": [
 "regras_c(df_b_mod,limites_2,'C2')"
 ],
 "execution_count": null,
 "outputs": [
 {
 "output_type": "stream",
 "text": [
 "Ocorrências de C2: \n",
 "-Amostras fora dos limites: [51, 56, 57, 59, 60]\n",
 "-Amostras abaixo do limite inferior: [51]\n",
 "-Amostras acima do limite superior: [56, 57, 59, 60]\n"
 ],
 "name": "stdout"
 }
 ]
 }
 ]
}

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais