{"id":22446899,"url":"https://github.com/albertofaraujo/r_anova_ensino","last_synced_at":"2026-01-07T07:09:22.013Z","repository":{"id":235239055,"uuid":"790358594","full_name":"AlbertoFAraujo/R_anova_ensino","owner":"AlbertoFAraujo","description":"Através da Análise de Variância (ANOVA) analisar três métodos de ensino, identificando se há diferenças significativas ou não entre os métodos abordados","archived":false,"fork":false,"pushed_at":"2024-04-22T18:53:14.000Z","size":7,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-01T15:46:04.513Z","etag":null,"topics":["anova","rstudio","tukey"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AlbertoFAraujo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-04-22T18:27:00.000Z","updated_at":"2024-04-22T18:55:47.000Z","dependencies_parsed_at":"2024-04-22T19:44:57.711Z","dependency_job_id":null,"html_url":"https://github.com/AlbertoFAraujo/R_anova_ensino","commit_stats":null,"previous_names":["albertofaraujo/r_anova_ensino"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlbertoFAraujo%2FR_anova_ensino","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlbertoFAraujo%2FR_anova_ensino/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlbertoFAraujo%2FR_anova_ensino/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlbertoFAraujo%2FR_anova_ensino/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AlbertoFAraujo","download_url":"https://codeload.github.com/AlbertoFAraujo/R_anova_ensino/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245833147,"owners_count":20679787,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["anova","rstudio","tukey"],"created_at":"2024-12-06T04:12:45.049Z","updated_at":"2026-01-07T07:09:21.983Z","avatar_url":"https://github.com/AlbertoFAraujo.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"![image](https://github.com/AlbertoFAraujo/R_anova_ensino/assets/105552990/c8475fb2-cf16-453e-a9c2-401efee3b604)\n\n### Tecnologias utilizadas: \n| [\u003cimg align=\"center\" alt=\"R_studio\" height=\"60\" width=\"60\" src=\"https://github.com/AlbertoFAraujo/R_Petrobras/assets/105552990/02dff6df-07be-43dc-8b35-21d06eabf9e1\"\u003e](https://posit.co/download/rstudio-desktop/) | \n|:---:|\n| R Studio |\n- **RStudio:** Ambiente integrado para desenvolvimento em R, oferecendo ferramentas para escrita, execução e depuração de código;\n\n\u003chr\u003e\n\n### Objetivo: \n\nAtravés da Análise de Variância (ANOVA) analisar três métodos de ensino, identificando se há diferenças significativas ou não entre os métodos abordados. Apresentar os resultados de forma manual e posteriormente utilizando funções do R.\n\nBase de dados: Sintética\n\u003chr\u003e\n\n### Script R: \n**Enunciado:**\n\nUm professor deseja testar três métodos de ensinos diferentes. Para isso, escolhe aleatoriamente três grupos de 5 alunos e cada grupo é ensinado por um método diferente. Determine se há diferença significativa entre os três métodos, com nível de significância de 5%\n\n| Métodos  |    |  |    |    |    |\n|----------|-----|-----|-----|-----|-----|\n| Método 1 | 75  | 62  | 71  | 58  | 73  |\n| Método 2 | 81  | 85  | 68  | 92  | 90  |\n| Método 3 | 73  | 79  | 60  | 75  | 81  |\n\n------------------------------------------------------------------------\n\n### Resolução Manual\n\n-   Número de observações (n) = 15\n\n-   Número de tratamentos (c) = 3\n\n1° Hipóteses:\n\n-   H0: média_1 = média_2 = média_3\n\n-   Ha: Ao menos uma das medidas são diferentes\n\n```r\n# Criação da tabela\nmetodo_1 \u003c- list(75,62,71,58,73)\nmetodo_2 \u003c- list(81,85,68,92,90)\nmetodo_3 \u003c- list(73,79,60,75,81)\n\ndf \u003c- data.frame(\n  'Metodo_1'= unlist(metodo_1),\n  'Metodo_2'= unlist(metodo_2),\n  'Metodo_3'= unlist(metodo_3)\n)\ndf \u003c- t(df)\ndf\n```\n```r\n# Média dos grupos\nmedia_1 \u003c- mean(df['Metodo_1',])\nmedia_2 \u003c- mean(df['Metodo_2',])\nmedia_3 \u003c- mean(df['Metodo_3',])\n\nsprintf('A média do método 1 é: %.2f', media_1)\nsprintf('A média do método 2 é: %.2f', media_2)\nsprintf('A média do método 3 é: %.2f', media_3)\n```\n\n[1] \"A média do método 1 é: 67.80\"\n\n[1] \"A média do método 2 é: 83.20\"\n\n[1] \"A média do método 3 é: 73.60\"\n\n```r\n# Média Global\nmedia_global \u003c- mean(df)\nsprintf('A média global é: %.2f', media_global)\n```\n[1] \"A média global é: 74.87\"\n\n```r\n# Variância Total\nSTQ \u003c- 0\n\nfor (i in df) {\n  STQ \u003c- STQ + (i - media_global)**2\n}\nsprintf('A variância total é STQ: %.2f', STQ)\n```\n[1] \"A variância total é STQ: 1457.73\"\n\n```r\nnj = ncol(df) # Número de notas distintas\nmedia_grupos \u003c- c(media_1, media_2, media_3)\n\n# Variação ENTRE grupo\nSQE \u003c- 0\n\nfor (i in media_grupos) {\n  SQE \u003c- SQE + nj * (i - media_global)**2\n}\n\nsprintf('A variância ENTRE os grupos é SQE: %.2f', SQE)\n\n# Média ENTRE grupos\nMQE \u003c- SQE/(nrow(df)-1)\nsprintf('A média ENTRE os grupos é MQE: %.2f', MQE)\n```\n[1] \"A variância ENTRE os grupos é SQE: 604.93\"\n\n[1] \"A média ENTRE os grupos é MQE: 302.47\"\n\n```r\n# Variação DENTRO do grupo\nSQD \u003c- STQ - SQE # Variação total - variação entre grupos\nsprintf('A variação DENTRO dos grupos é SQD: %.2f', SQD)\n\n# Média DENTRO do grupo\nMQD \u003c- SQD/(length(df) - nrow(df))\nsprintf('A média DENTRO dos grupos é MQD: %.2f', MQD)\n```\n[1] \"A variação DENTRO dos grupos é SQD: 852.80\"\n\n[1] \"A média DENTRO dos grupos é MQD: 71.07\"\n\n```r\n# F observado\nFo \u003c- MQE/MQD\nsprintf('A Frequência observada é Fo: %.2f', Fo)\n```\n[1] \"A Frequência observada é Fo: 4.26\"\n\n![clipboard-1933225919](https://github.com/AlbertoFAraujo/R_anova_ensino/assets/105552990/e0aab86b-a2f0-4cd7-977a-b638cbf4858a)\n\nCom todos os valores determinados, podemos prosseguir com a criação da tabela auxiliar.\n\nPara N sendo o número total de notas e k o número de tratamentos, temos:\n\nGraus de liberdade entre os grupos: 3 - 1;\n\nGraus de liberdade dentro dos grupos: 15 - 3 = 12\n\n| FV     | SQ           | GL | MQ          | Fo     |\n|--------|--------------|----|-------------|--------|\n| Entre  | SQE = 604,93 | 2  | MQE = 302,46| Fo = 4,26|\n| Dentro | SQD = 852,80 | 12 | MQD = 71,00 | -     |\n| Total  | STQ = 1457,73| 14 | -          | -     |\n\nPara calcular a Fc (Frequência calculada) utilizaremos a tabela abaixo:\n![clipboard-3649464749](https://github.com/AlbertoFAraujo/R_anova_ensino/assets/105552990/e5c27d93-4b20-4859-b045-2fedb0b10a99)\n\nPara Coluna 2 x Linha 12 (conforme os graus de liberdades determinados)\n\nFc = 3,88.\n\n****\n### Aplicação de TUKEY\nComo o método de ANOVA informa se existe ou não diferença entre os tratamentos, mas não informa qual (is) tratamentos estão diferindo dos outros, utilizaremos então o método TUKEY para determinar essa relação entre os tratamentos.\n\n\nComo Fo \\\u003e Fc, portanto **Rejeitamos a hipótese nula (Ho)**, ou seja, para o nível de significância de 5% provamos estatísticamente que há diferença significativa entre os métodos de ensino.\n\n```r\nq \u003c- 3.77\ndelta \u003c- q * (sqrt(MQD)/sqrt(nj))\nsprintf('Amplitude total estudentizada q: %.2f', delta)\n```\n[1] \"Amplitude total estudentizada q: 14.21\"\n![clipboard-2842578320](https://github.com/AlbertoFAraujo/R_anova_ensino/assets/105552990/2f5f2350-6270-437d-aedf-33a1eaeff478)\n```r\n# Contraste (em módulo)\nmet_1_2 \u003c- abs(media_1 - media_2)\nmet_1_3 \u003c- abs(media_1 - media_3)\nmet_2_3 \u003c- abs(media_2 - media_3)\n\nsprintf('Método 1 x Método 2: %.2f', met_1_2)\nsprintf('Método 1 x Método 3: %.2f', met_1_3)\nsprintf('Método 2 x Método 3: %.2f', met_2_3)\n```\n[1] \"Método 1 x Método 2: 15.40\"\n\n[1] \"Método 1 x Método 3: 5.80\"\n\n[1] \"Método 2 x Método 3: 9.60\"\n\n**Conclusão:**\nOs métodos 1 e 2 são diferentes significadamente, os demais não há efeito, ou seja, não há diferença significativa.\n\n------------------------------------------------------------------------\n### Resolução com funções R\n```r\n# Ajuste dos dados\nmet_1 \u003c- data.frame('Metodos' = rep('Met1',5),'Obs'= df[1,])\nmet_2 \u003c- data.frame('Metodos' = rep('Met2',5),'Obs'= df[2,])\nmet_3 \u003c- data.frame('Metodos' = rep('Met3',5),'Obs'= df[3,])\n\n# Unindo por linhas\ndf_r \u003c- rbind(met_1, met_2, met_3)\ndf_r\n```\n| Metodos | Obs |\n|---------|-----|\n| Met1    | 75  |\n| Met1    | 62  |\n| Met1    | 71  |\n| Met1    | 58  |\n| Met1    | 73  |\n| Met2    | 81  |\n| Met2    | 85  |\n| Met2    | 68  |\n| Met2    | 92  |\n| Met2    | 90  |\n| Met3    | 73  |\n| Met3    | 79  |\n| Met3    | 60  |\n| Met3    | 75  |\n| Met3    | 81  |\n\n```r\n# Aplicação do ANOVA\nanova_teste \u003c- aov(Obs ~ Metodos, data = df_r)\nsummary(anova_teste)\n```\n Df Sum Sq Mean Sq F value Pr(\u003eF)  \nMetodos      2  604.9  302.47   4.256 0.0401 *\nResiduals   12  852.8   71.07                 \n\nSignif. codes:  \n0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1\n\n```r\n# Aplicação do TUKEY\ndf_tukey \u003c- TukeyHSD(anova_teste)\ndf_tukey\n```\n Tukey multiple comparisons of means\n    95% family-wise confidence level\n\nFit: aov(formula = Obs ~ Metodos, data = df_r)\n\n| $Metodos | diff | lwr        | upr       | p adj     |\n|----------|------|------------|-----------|-----------|\n| Met2-Met1| 15.4 |  1.175841  | 29.624159 | 0.0338349 |\n| Met3-Met1|  5.8 | -8.424159  | 20.024159 | 0.5391163 |\n| Met3-Met2| -9.6 | -23.824159 |  4.624159 | 0.2109028 |\n\nOnde:\n\n-   **diff**: Indica a diferença média entre os grupos comparados.\n\n-   **lwr**: É o limite inferior do intervalo de confiança para a diferença entre as médias dos grupos.\n\n-   **upr**: É o limite superior do intervalo de confiança para a diferença entre as médias dos grupos.\n\n-   **p adj**: É o valor-p ajustado para múltiplas comparações.\n\n**Conclusão:**\n\n1.  Para a comparação entre Met2 e Met1, a diferença média é de 15.4, com um intervalo de confiança de 1.176 a 29.624. O valor-p ajustado é 0.0338, o que sugere **uma diferença significativa entre Met2 e Met1**.\n\n2.  Para a comparação entre Met3 e Met1, a diferença média é de 5.8, com um intervalo de confiança de -8.424 a 20.024. O valor-p ajustado é 0.5391, indicando que **não há diferença significativa entre Met3 e Met1**.\n\n3.  Para a comparação entre Met3 e Met2, a diferença média é de -9.6, com um intervalo de confiança de -23.824 a 4.624. O valor-p ajustado é 0.2109, novamente indicando que **não há diferença significativa entre Met3 e Met2**.\n\nEm resumo, com base nos resultados do teste de Tukey, parece haver uma diferença significativa entre Met2 e Met1, mas não entre Met3 e Met1 ou entre Met3 e Met2.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falbertofaraujo%2Fr_anova_ensino","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falbertofaraujo%2Fr_anova_ensino","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falbertofaraujo%2Fr_anova_ensino/lists"}