-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlabD.py
61 lines (43 loc) · 1.81 KB
/
labD.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# Higor Martinez Oliveira
#Enunciado do trabalho em: https://drive.google.com/file/d/1K6_qpEiaW-Yv0WJLHiuTaPA3-pMVmcVp/view?usp=sharing
#Exercicio 1
def frequenciaDomicilio(dicionario):
""""Retorna um dicionario com a frequencia de tipos de domicilios do censo. A chave do dicionário de entrada é o CPF do respondente e os valores o tipo de domicílio"""
dicDomicilios = {}
for c in dicionario.values():
if c not in dicDomicilios:
dicDomicilios[c] = 1
else:
dicDomicilios[c] += 1
return dicDomicilios
#Exercicio 2
def processaDados(dicionario):
"""Retorna o total de respondentes e o conjunto de CPFs que possui certo equipamento: tv, máquina e geladeira"""
tv = {}
maquina = {}
geladeira = {}
for n in dicionario.keys():
if "tv" in dicionario.get(n):
tv[n] = dicionario.keys()
for n in dicionario.keys():
if "maquina" in dicionario.get(n):
maquina[n] = dicionario.keys()
for n in dicionario.keys():
if "geladeira" in dicionario.get(n):
geladeira[n] = dicionario.keys()
dicDados = {}
dicDados["total"] = len(dicionario)
dicDados["tv"] = set(tv)
dicDados["maquina"] = set(maquina)
dicDados["geladeira"] = set(geladeira)
return dicDados
def eletrodomesticos(dicionario):
""""Retorna a % de domicilios: com maquina e geladeira; sem tv; sem nenhum equipamento"""
respondentes = dicionario.get("total")
tv = dicionario.get("tv")
maquina = dicionario.get("maquina")
geladeira = dicionario.get("geladeira")
caso1 = (len(maquina.intersection(geladeira))/respondentes)*100
caso2 = ((respondentes - len(tv))/respondentes)*100
caso3 = ((respondentes - len(tv | maquina | geladeira))/respondentes)*100
return (caso1, caso2, caso3)