segunda-feira, 26 de abril de 2021

Curso de Python, Prof. Robson Campos - como complemento da disciplina - Optativo

 Curso de Python, Prof. Robson Campos -  como complemento da disciplina - Optativo


Começaremos Segunda 26/4/2021 as 18:10 horas, todas as informações estarão neste blog


Prof. Robson Campos, monitor da Disciplina

 LCE137


Vídeo 1

https://youtu.be/kwN9qjwaFpk


Vídeo 2

https://youtu.be/4zg5Y6S0Xwc


Link Permanente no Google Meet: 

 

zwz-pbzr-qkx

 

 

Monitoria Python 26/04

Tipos primitivos

‘Str’ Caracteres de texto

‘Int’ são número inteiros (1 ,5 ,7 ,8,545,1000)

‘Float’ são números com casas decimais (1.5, 5.7,8.9, 3.1415)

‘bool’ valores reais ou falsos (True or False), por exemplo ( 1 > 2, false)

Operadores aritméticos

+ adição, soma (1+3 = 4)

- subtração (3 - 1 = 2)

* multiplicação (2 * 5 = 10)

/ divisão (10 / 2 = 5)

// Divisão inteira (5 // 2 = 2)

% Resto da divisão ( 5 % 2 = 1)

** Exponenciação (5 ** 2 = 25)

Ordem de precedência das operações

1º – As expressões contidas em parênteses têm a precedência maior na linguagem Python. Isso permite que uma expressão execute antes de outra. Ex.:

((2+5) * 3) = 21

2º – Exponenciação ex

(1 +5**2) = 26

3º – Multiplicação, divisão, divisão inteira, resto da divisão.

4º – Soma e multiplicação

Nota: Se operadores com a mesma prioridade de procedência aparecerem em sequência o python executará na ordem em que surgirem ex
(2 * 8 / 4) = 4

Condições

As condições servem para criar “caminhos” diferentes no programa dependendo as variáveis.

If – Significa “Se” determina a condição inicial.

Else – significa “Se não” determina o que deve ocorrer caso as outras condições não forem atendidas.

Elif – é a união de else e if, serve para determinar uma condição adicional.

Exemplo.

If x > y:

Desdobramento 1

Elif y == x:

Desdobramento 2

Else:

Desdobramento caso nenhum dos anteriores seja atendido (nesse caso x < y)

Importando Módulos

O python tem dezenas de funções internas, entretanto é possível importar mais bibliotecas com módulos (funções) adicionais para determinadas tarefas. Essas bibliotecas podem estar instaladas junto com seu python ou instaladas posteriormente.

Para realizar esse processo podemos carregar a biblioteca inteira ou apenas a função que queremos.

Carregando biblioteca inteira ex:

Import math



Carregando função especifica ex:

From math import sin



Exercicios:

1 - Exercício: Desenvolva um programa que leia as duas notas de um aluno,
calcule e mostre a sua média.

2 - Exercício: Faça um programa que leia um número Inteiro qualquer e mostre na tela a sua tabuada.

3- Exercício: Faça um algoritmo que leia o preço de um produto
e mostre seu novo preço, com 10% de desconto.

4- Faça um Programa que peça a temperatura em graus Fahrenheit, transforme e
mostre a temperatura em graus Celsius.
C = 5 * ((F-32) / 9).'''

5- Exercício: Crie um programa que leia um número inteiro e
mostre na tela se ele é PAR ou ÍMPAR.

6- Exercício : Escreva um programa para aprovar
o empréstimo bancário para a compra de uma casa. Pergunte o valor da casa, o salário do comprador
e em quantos anos ele vai pagar.
A prestação mensal não pode exceder 30% do salário ou então o empréstimo será negado.

7- Exercício: Escreva um programa que faça o computador "pensar"
em um número inteiro entre 0 e 5 e peça para o usuário tentar descobrir qual
foi o número escolhido pelo computador. O programa deverá escrever na tela se o usuário venceu ou perdeu. Nota: Biblioteca random, função randint.

8- Tendo como dado de entrada a altura (h) de uma pessoa, construa um algoritmo que
calcule seu peso ideal, utilizando as seguintes fórmulas:
Para homens: (72.7*h) - 58
Para mulheres: (62.1*h) - 44.7

9- Faça um Programa que peça o raio de um círculo,
calcule e mostre sua área, sua perimetro e seu diametro.
lembre que: perimetro = 2pi * r, diametro = 2r e area = pi x r^2
use pi atravez da função math

10- faça um programa que leia um ano qualquer
e mostre se ele é bissexto:
lembre-se que Para ser bissexto, o ano deve ser:
Divisível por 4. Sendo assim, a divisão é exata com o resto igual a zero;


Não pode ser divisível por 100. Com isso, a divisão não é exata, ou seja, deixa resto diferente de zero;

Pode ser que seja divisível por 400. Caso seja divisível por 400, a divisão deve ser exata, deixando o resto igual a zero.
use a biblioteca 'datetime' função date para dizer se o ano atual é bissexto







segunda-feira, 19 de abril de 2021

Exercícios - Lista

 



Exercícios - Lista


Mandar os exercícios para e-mail:


lce5736.usp@gmail.com


A Lista de Exerccios Tambem Esta no Site da Disciplina LCE5736:

https://sites.google.com/view/lce5736-usp-gabriel



Exercício 1 - Teste se a média aritmética dos dois estados é igual. Se existirem outliers elimine-os.  Analise os dados com o outlier e eliminando-o, compare os resultados. Discuta os resultados da analise sem o outlier. Dead Line: 21/4/2021.

Teste T - Macro em Excel - Inferência Indutiva

Inferência Indutiva utilizando Estatística



Cidade

Estado

Salario na Industria Tático/Operacional

1

MS

1678

2

SP

1850

3

MS

1650

4

MS

1890

5

SP

1950

6

SP

2050

7

SP

2320

8

SP

1800

9

MS

1789

10

MS

1890

11

MS

1700

12

MS

2550

13

SP

2150

14

SP

1680


Trocar 1680 pelos ultimos 4 digitos do seu numero USP
Rodar como está na Internet e depois trocar o numero 1680 pelos 4 ultimos digitos do seu numero USP



Arquivo do Ecxel feito em dinamica conjunta:
(Arquivo para Downoad)




Livro Introdutorio sobre Machine Learning

https://alex.smola.org/drafts/thebook.pdf

Exercício 2 - Analise os dados do Site a seguir utilizando Regressão em Excel, grafico e Ferramentas de Analise de Dados do Excel (macro). Enviar programa e relatório em Word, discutindo os resultados. Dead line: 28/4/2021.

http://rstudio-pubs-static.s3.amazonaws.com/431946_418d123eabd94c75b1eb1799e14da71e.html

Rodar como está na Internet e depois trocar o numero 202 pelos 3 ultimos digitos do seu numero USP

Resolução:

Âmbito Acadêmico:

A relação entre População (Variável X, causa) e Vendas (Variável Y, efeito) é significativa (p<0,0001), sendo o coeficiente de regressão estimado igual a 5, com intervalo de confiança de 95% entre os limites, 3,7 e 6,3.

Assim para cada unidade de aumento da população aumenta em média 5 unidades as vendas.

 

Âmbito Corporativo:

O aumento da população implica em aumento das vendas (margem de confiança maior que 99,99%). Coeficiente de regressão 5, assim para cada unidade de aumento da população temos 5 unidades de aumento das vendas em média.


Exercício 3 - Analise estes dados utilizando ANOVA em SAS. Enviar programa e relatório em Word, discutindo os resultados. Dead line: 28/4/2021.


Dados de:
https://www.voitto.com.br/blog/artigo/anova
Resolver no SAS


 

 

domingo, 18 de abril de 2021

MANOVA

 MANOVA 












data imc_dat;
input cat $ imc corr kcal;
cards;
AT 20.2 60.7 3200
AT 21.3 54.8 3100
AT 19.3 49.6 2800
AT 21.1 52.3 3300
SEM 22.4 14.9 2600
SEM 21.9 17.8 2700
SEM 23.8 18.6 3200
SEM 24.1 15.1 3300
SE  27.3 2.5 2700
SE  23.4 4.3 2300
SE  25.2 2.3 2600
SE  26.4 2.6 3200
PR 26.2 4.1 2600
PR 24.2 2.1 2700
PR 25.4 1.9 2650
;
proc print;
run;
proc glm;
 class cat;
 model imc corr kcal  = cat;
 contrast " Atl e Semiat Vs Seden e Prof"  cat 1 -1 -1 1;
 contrast " Professor Vs Sedentario" cat  0 1 -1 0;
 manova h=_all_ / printe printh;
 contrast " Atl e Semiat Vs Seden e Prof" 1 -1 -1 1;
 contrast " Professor Vs Sedentario" cat 0 1 -1 0;

run;



/* 
contrast " Atl e Semiat Vs Seden e Prof"  cat 1 -1 -1 1;
Pega a ordem alfabetica dos niveis dos fatores para os coeficientes
   dos contrastes 
Se colocar o contraste depois do comando MANOVA faz os contrastes univariados 
tambem
*/


Correlação Residual MANOVA:


Partial Correlation Coefficients from the Error SSCP Matrix / Prob > |r|
DF = 11
imc
corr
kcal
imc
1.000000

0.017729
0.9564
0.697770
0.0116
corr
0.017729
0.9564
1.000000

0.132496
0.6814
kcal
0.697770
0.0116
0.132496
0.6814





Outro Exemplo de Contrastes, Ordem Alfabética:





- Análise Multivariada Exemplos: 
















Comparar resultados ANOVA com Kruskal-Wallis.


data imc_dat;
input cat $ imc corr kcal;
cards;
AT    20.2  60.7  3200
AT    21.3  54.8  3100
AT    19.3  49.6  2800
AT    21.1  52.3  3300
SEM   22.4  14.9  2600
SEM   21.9  17.8  2700
SEM   23.8  18.6  3200
SEM   24.1  15.1  3300
SE    27.3  2.5   2700
SE    23.4  4.3   2300
SE    25.2  2.3   2600
SE    26.4  2.6   3200
PR    26.2  4.1   2600
PR    24.2  2.1   2700
PR         25.4         1.9        2650
;
proc print;
run;
proc npar1way data=imc_dat wilcoxon dscf;
 class cat;
 var imc corr kcal = cat;
run;
Tem um erro nesse programa, onde esta? Compare com os slides apresentados antes do programa SAS (Dois slides de Kruskal Wallis com trechos de programa SAS).


 var imc corr kcal = cat; ==> ANOVA, GLM, MANOVA
 var imc corr kcal;          ==> Kruskal Wallis







Resultados de Kruskal Wallis

Arquivo Word para Download:




Resultados ANOVA dados brutos, transformados e da Estat. Robusta. Tese doutorado do Gabriel.









quarta-feira, 14 de abril de 2021

Machine Learning Não Supervisionado Data Crunching e Cluster Analysis

 Machine Learning Não Supervisionado

Data Crunching e Cluster Analysis


Videoaulas


Videoaula 1

Introdução à Estatística Multivariada e à Inteligência Artificial

https://youtu.be/AQdRiLq9lss




Videoaula 2

Data Crunching - Pivot Tables - Pivot ou Tabela Dinâmica em Excel (Calculo da Matriz de Médias Aritméticas)

https://youtu.be/vhHHc7VxgBk




Videoaula 3

Visual Analytics ou Cluster Analysis ou Elaboração do Dendrograma em Linguagem SAS na Nuvem ( SAS on Demand - Free) 


https://youtu.be/jkpbgtRNZ40











- Pesquisar Data:
                      - Mining
                      - Crunching
                      - Analysis


  Tabela Dinâmica - Excel (Pivot Table ou Paivot ou "Pivot" forma de referenciar em empresas)

 e Cluster Analysis


Estatística Multivariada – Cluster Analysis

Vamos começar a “olhar” com a Estatística (algoritmos matemáticos), de forma multivariada.

Isso é muito familiar para a gente por que nosso cérebro (muito mais poderoso que qualquer computador, 20.000 computadores de ultima geração de 2019) enxerga de forma multivariada.

Como reconhecemos os objetos ou as pessoas, por somente um item? Por exemplo, como reconhecemos uma pessoa: sexo, altura, cor do cabelo, formato do rosto, timbre da voz, sotaque, perfume que utiliza (ou que não utiliza), etc.

Na verdade utilizamos todos esses dados e muitos mais simultaneamente, ou seja, nosso sistema de reconhecimento natural é multivariado (como a Estatística Multivariada).

Como nosso cérebro processa toda essa informação em frações de segundo não sabemos. A neurociência está quebrando cabeça com isso. Podemos perguntar para Nicolelis (o neurocientista que dizem ter a maior chance de conseguir um Premio Nobel para o Brasil).

O que podemos fazer com a matemática, estatística e computação é simular de alguma forma primitiva o funcionamento do cérebro.




Esse tipo de abordagem é utilizado nas áreas de Inteligencia de Negócios (BI), Sistemas de Informação ( Data Mining, Data Crunching, Decision Support Systems-DSS e Big-Small Data) e Pesquisa Cientifica



Também é utilizado numa área da Inteligência Artificial denominada Visual Analytics, vejamos o seguinte exemplo, como poderíamos enxergar em dimensão 78?










No exemplo a ser apresentado (arquivo de Excel para download), temos 4 categorias de pessoas: Atletas, Semi-atletas, Sedentários e Professores da ESALQ. Nessas pessoas foram medidas 3 variáveis, Índice de Massa Corporal, Quantos quilômetros corre ou anda por semana e Quilocalorias que Ingere por Dia (modelo trivariado, se tem mais do que uma já é multivariado).
Exemplo para Download:



Aqui apresentamos o nosso objetivo, elaborarmos um dendrograma, que é a representação gráfica da saída do procedimento Cluster Analysis do Programa SAS:






                         
                           Tabela Dinâmica
                              em   Excel
                             ( Pivot Table )

Podemos ver nesse exemplo que temos vários representantes de cada categoria, são exatamente 4 (ou quatro repetições de cada categoria)

Para aplicarmos Cluster Analysis devemos calcular previamente as medias aritméticas de cada categoria, para cada uma das 3 variáveis de resposta.






Vamos colocar a sequencia de passos para obtermos essas medias utilizando um recurso muito poderoso de bancos de dados do Excel (tal vez o mais poderoso):


 Tabela Dinâmica ou Pivot Table ou Pivot.


Passo 1 – Marcar o banco de dados original

Passo 2 – Entrar em Inserir e Depois em Tabela Dinâmica.






Passo 3 – Dar OK. Entraremos no Ambiente de Trabalho da Tabela Dinâmica:





Passo 4 – Clicar em Categorias “Cat.”(sem soltar o mouse, operação “Drag”) e arrastar as categorias para o local Rótulos de Linha.





Passo 5 – Arrastar as 3 variáveis observadas: IMC, Corr e Kcal para o local Somatória de Valores (Σ valores). Veja que o protótipo da Tabela Dinâmica, já está pronto, no canto superior esquerdo.



Passo 6 – O problema é que temos somatória dos valores e precisamos de medias aritméticas para entrar no Programa de 

Cluster Analysis do SAS. Como fazer para trocar 

somatória para medias?:


Veja que os dados são de soma, um IMC de 100, praticamente não existe ( 81,9 ; 100,7 ...)


·       Colocar o cursor na célula “soma de IMC”

    ·   Pressionar o botão direito do mouse







    ·       Escolher a opção: “Configurações do Campo de Valor”

    ·       Veja que está em “Soma”, clicar em “Média”. 





    Veja que agora temos Média de ICM para cada categoria.


    ·       Fazer mesma operação para Corr e Kcal.





    Fim do calculo das medias de cada categoria.


    Agora é somente copiar e colar no SAS.


    Programa SAS para Cluster Analysis dos Dados Calculados no Excel:

    data  pessoas;
    input cat $ imc corr kcal;
    cards;
    DADOS DO SAS DEPOIS DE APLICAR TABELA DINAMICA
    ;
    proc cluster data=pessoas outtree = arvore method = average;
    var imc corr kcal;
    id cat;
    run;
    PROC TREE DATA = arvore;
    RUN;