Data Science do zero: Primeiras regras com o Python



Baixar 5.26 Mb.
Pdf preview
Página14/75
Encontro24.07.2022
Tamanho5.26 Mb.
#24344
1   ...   10   11   12   13   14   15   16   17   ...   75
Data Science do zero - Primeiras regras
for salary, tenure in salaries_and_tenures:
salary_by_tenure[tenure].append(salary)
# as chaves são os anos, cada valor é a média salarial para aquele ano
average_salary_by_tenure = {
tenure : sum(salaries) / len(salaries)
for tenure, salaries in salary_by_tenure.items()
}
Não é muito útil, já que nenhum dos usuários possui o mesmo caso, o que
significa que estamos reportando apenas os salários individuais dos usuários:


{0.7: 48000.0,
1.9: 48000.0,
2.5: 60000.0,
4.2: 63000.0,
6: 76000.0,
6.5: 69000.0,
7.5: 76000.0,
8.1: 88000.0,
8.7: 83000.0,
10: 83000.0}
Talvez fosse mais proveitoso agrupar os casos:
def tenure_bucket(tenure):
if tenure < 2:
return "less than two"
elif tenure < 5:
return "between two and five"
else:
return "more than five"
Então, o grupo junta os salários correspondentes para cada agrupamento:
# as chaves são agrupamentos dos casos, os valores são as listas
# dos salários para aquele agrupamento
salary_by_tenure_bucket = defaultdict(list)
for salary, tenure in salaries_and_tenures:
bucket = tenure_bucket(tenure)
salary_by_tenure_bucket[bucket].append(salary)
E, finalmente, computar a média salarial para cada grupo:
# as chaves são agrupamentos dos casos, os valores são
# a média salarial para aquele agrupamento
average_salary_by_bucket = {
tenure_bucket : sum(salaries) / len(salaries)
for tenure_bucket, salaries in salary_by_tenure_bucket.iteritems()
}
que é mais interessante:
{'between two and five': 61500.0,
'less than two': 48000.0,
'more than five': 79166.66666666667}
E você tem um clichê: “os cientistas de dados com mais de cinco anos de
experiência recebem 65% a mais do que os que possuem pouca ou nenhuma
experiência!”


No entanto, nós escolhemos os casos de forma aleatória. O que realmente
queríamos fazer era organizar um tipo de afirmação sobre o efeito do salário —
em média — de ter um ano adicional de experiência. Além de tornar o fato mais
intrigante, ainda permite que façamos previsões sobre salários que não
conhecemos. Exploraremos mais essa ideia no Capítulo 14.
Contas Pagas
Ao voltar para a sua mesa, a vice-presidente da Receita está esperando por você.
Ela quer entender melhor quais são os usuários que pagam por contas e quais
que não pagam (ela sabe seus nomes, mas essa informação não é essencial).
Você percebe que parece haver uma correspondência entre os anos de
experiência e as contas pagas:
0.7 paid
1.9 unpaid
2.5 paid
4.2 unpaid
6 unpaid
6.5 unpaid
7.5 unpaid
8.1 unpaid
8.7 paid
10 paid
Os usuários com poucos e muitos anos de experiência tendem a pagar; os
usuários com uma quantidade mediana de experiência não.
Logo, se você quisesse criar um modelo — apesar de não haver dados o
suficiente para servir de base para um — você talvez tentasse prever “paid” para
os usuários com poucos e muitos anos de experiência, e “unpaid” para os
usuários com quantidade mediana de experiência:

Baixar 5.26 Mb.

Compartilhe com seus amigos:
1   ...   10   11   12   13   14   15   16   17   ...   75




©historiapt.info 2023
enviar mensagem

    Página principal