Central de Atendimento no Python
Você poderá baixar (downloding) desta página em (download)
Uma grande quantidade............
import pandas as pd
import numpy as np
dados_chegada = {
'tempo_chegada': [5, 7, 8, 10, 12],
'ocorrencias':[14, 32, 26, 18, 10]
}
#total_ocorrencias = np.sum(ocorrencias)
#print(total_ocorrencias)
dist_freq = pd.DataFrame( dados_chegada, index = ['linha 0', 'linha 1', 'linha 2', 'linha 3', 'linha 4'])
dist_freq
soma = np.sum(dist_freq['ocorrencias']) soma
100
prob_chegada = []
for x in dist_freq['ocorrencias']:
prob_chegada.append(x/soma)
print(prob_chegada)
dados_chegada['prob_chegada'] = prob_chegada
dist_freq = pd.DataFrame( dados_chegada, index = ['linha 0', 'linha 1', 'linha 2', 'linha 3', 'linha 4'])
dist_freq
[0.14, 0.32, 0.26, 0.18, 0.1]
prob_acum_chegada = []
acum = 0
for x in dist_freq['prob_chegada']:
resultado = x + acum
prob_acum_chegada.append(resultado)
acum = resultado
print(resultado)
print(prob_acum_chegada)
dados_chegada['prob_acum_chegada'] = prob_acum_chegada
dist_freq = pd.DataFrame( dados_chegada, index = ['linha 0', 'linha 1', 'linha 2', 'linha 3', 'linha 4'])
dist_freq
0.9999999999999999
[0.14, 0.46, 0.72, 0.8999999999999999, 0.9999999999999999]
lim_superior_chegada = []
for x in dist_freq['prob_acum_chegada']:
lim_sup = x * 100
lim_superior_chegada.append(lim_sup)
lim_sup
lim_superior_chegada
dados_chegada['lim_superior_chegada'] = lim_superior_chegada
dist_freq = pd.DataFrame( dados_chegada, index = ['linha 0', 'linha 1', 'linha 2', 'linha 3', 'linha 4'])
dist_freq
lim_inferior_chegada = [1]
for x in dist_freq['lim_superior_chegada']:
lim_inf = x + 1
lim_inferior_chegada.append(lim_inf)
lim_inferior_chegada
lim_inferior_chegada.pop(-1)
print(lim_inferior_chegada)
dados_chegada['lim_inferior_chegada'] = lim_inferior_chegada
dados_chegada['lim_superior_chegada'] = lim_superior_chegada
dist_freq = pd.DataFrame( dados_chegada, index = ['linha 0', 'linha 1', 'linha 2', 'linha 3', 'linha 4'])
dist_freq
[1, 15.000000000000002, 47.0, 73.0, 90.99999999999999]
dist_freq = pd.DataFrame(dados_chegada, index = ['linha 0', 'linha 1', 'linha 2', 'linha 3', 'linha 4'], columns = ['tempo_chegada','ocorrencias','prob_chegada','prob_acum_chegada','lim_superior_chegada','lim_inferior_chegada']) matriz = dist_freq.loc[:,['tempo_chegada','lim_inferior_chegada','lim_superior_chegada']] print(matriz)
| tempo_chegada | lim_inferior_chegada | lim_superior_chegada | |
| linha 0 | 5 | 1.0 | 14.0 |
| linha 1 | 7 | 15.0 | 46.0 |
| linha 2 | 8 | 47.0 | 72.0 |
| linha 3 | 10 | 73.0 | 90.0 |
| linha 4 | 12 | 91.0 | 100.0 |
import numpy as np
def criaLista(lim_inferior_chegada, lim_superior_chegada):
return np.arange(lim_inferior_chegada, lim_superior_chegada+1,1)
lim_inferior_chegada, lim_superior_chegada = 15, 46
print(criaLista(lim_inferior_chegada, lim_superior_chegada))
[15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46]
print(matriz.iloc[0]['lim_inferior_chegada']) print(matriz.iloc[0]['lim_superior_chegada'])
1.0
14.000000000000002
contagem = matriz['tempo_chegada'].count() #contagem das linhas na matriz print(contagem)
5
import numpy as np
def criaLista(lim_inferior_chegada, lim_superior_chegada):
return np.arange(lim_inferior_chegada, lim_superior_chegada+1,1)
for i in range(0,contagem):
x=int(matriz.iloc[i]['lim_inferior_chegada'])
y=int(matriz.iloc[i]['lim_superior_chegada'])
#print(x)
#print(y)
#print(criaLista(x, y))
z=int(matriz.iloc[i]['tempo_chegada'])
print(z)
lista_i = criaLista(x,y)
print(lista_i)
5
[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14]
7
[15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46]
8
[47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72]
10
[73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89]
12
[90 91 92 93 94 95 96 97 98 99]
# Entrada do número aleatório sorteado
#alea = int(input("entrar com o número aleatório de 1 a 100: "))
num_aleatorios = [82,10,30,54,72,94,26,7,33,38,89,20,70,99,60,1,22,40,42,99,77,33,85,45,63]
for i in range(25):
alea = num_aleatorios[i]
print(alea)
82
10
30
54
72
94
26
7
33
38
89
20
70
99
60
1
22
40
42
99
77
33
85
45
63
import numpy as np
def criaLista(lim_inferior_chegada, lim_superior_chegada):
return np.arange(lim_inferior_chegada, lim_superior_chegada+1,1)
for i in range(0,contagem):
x=int(matriz.iloc[i]['lim_inferior_chegada'])
y=int(matriz.iloc[i]['lim_superior_chegada'])
#print(x)
#print(y)
#print(criaLista(x, y))
z=int(matriz.iloc[i]['tempo_chegada'])
#print(z)
lista = criaLista(x,y)
print(lista)
#print(type(lista))
if alea in lista:
print("Sim")
print("Na lista do tempo de chegada: ",z)
intervalo = z
else:
print("Não")
#if (lista.any() == alea):
#print("Sim",z)
#else:
#print("Não")
print("O tempo de chegada escolhido foi: ",intervalo)
[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14]
Não
[15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46]
Não
[47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72]
Sim
Na lista do tempo de chegada: 8
[73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89]
Não
[90 91 92 93 94 95 96 97 98 99]
Não
O tempo de chegada escolhido foi: 8
Cria um DataFrame a partir de uma lista
import pandas as pd from pandas import DataFrame import numpy as np num_aleatorios = [82,10,30,54,72,94,26,7,33,38,89,20,70,99,60,1,22,40,42,99,77,33,85,45,63] df = pd.DataFrame(num_aleatorios, columns = ['Alea']) print(df)
Alea
0 82
1 10
2 30
3 54
4 72
5 94
6 26
7 7
8 33
9 38
10 89
11 20
12 70
13 99
14 60
15 1
16 22
17 40
18 42
19 99
20 77
21 33
22 85
23 45
24 63