Central de Atendimento no Python

Volta aos Exemplos

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