1 00:00:08,074 --> 00:00:11,211 Com certeza na sua vida pessoal ou profissional 2 00:00:11,211 --> 00:00:15,949 você já se deparou com uma situação que você tem que verificar a performance 3 00:00:15,949 --> 00:00:20,754 do antes e o depois de algo, como por exemplo, no computador da sua casa. 4 00:00:20,754 --> 00:00:23,823 Supondo que você vai aumentar a memória RAM, 5 00:00:23,823 --> 00:00:29,095 e ele está demorando cinco minutos para iniciar, e aí você coloca memória RAM, 6 00:00:29,095 --> 00:00:32,966 depois você quer verificar o quanto melhorou, ou se melhorou, 7 00:00:32,966 --> 00:00:35,935 então você está fazendo uma análise do antes e o depois. 8 00:00:35,935 --> 00:00:40,406 E a nossa linguagem R também nos ajuda a fazer a análise do antes e o depois. 9 00:00:40,406 --> 00:00:45,645 Só que, nesse caso, nós precisamos ter dados que consigam fazer essa comparação. 10 00:00:45,645 --> 00:00:48,015 Vamos trazer aqui um exemplo para vocês. 11 00:00:48,015 --> 00:00:51,985 Nesse exemplo, pense num caso real da fábrica de software. 12 00:00:51,985 --> 00:00:55,989 Nós temos lá um sistema funcionando que vai para a produção 13 00:00:55,989 --> 00:00:58,992 e aí descobrimos que a performance dele não está muito boa. 14 00:00:58,992 --> 00:01:03,363 Fizeram uma medição hora a hora nessa nossa performance. 15 00:01:03,363 --> 00:01:07,700 Então, após essa análise de uma performance não tão boa, 16 00:01:07,700 --> 00:01:12,171 melhorar o algoritmo, que é a lógica que está dentro do sistema, 17 00:01:12,171 --> 00:01:14,857 e, após, fazer uma nova medição. 18 00:01:14,857 --> 00:01:16,242 É isso que vamos ver agora, 19 00:01:16,242 --> 00:01:19,383 vamos fazer uma análise descritiva do antes e depois 20 00:01:19,383 --> 00:01:22,530 para vocês terem a confiança dos dados que estão sendo analisados, 21 00:01:22,530 --> 00:01:24,250 e até mesmo o seu resultado. 22 00:01:24,250 --> 00:01:25,957 Vem comigo que eu vou mostrar para vocês. 23 00:01:25,957 --> 00:01:31,924 Como sempre, eu deixo um script pronto, não somente as linhas de execução, 24 00:01:31,924 --> 00:01:36,462 o código do que precisamos fazer, mas também um comentário. 25 00:01:36,462 --> 00:01:40,366 Um breve resumo da análise descritiva está aqui no começo. 26 00:01:40,366 --> 00:01:45,271 Depois, se você quiser fazer uma pausa, ler e interpretar 27 00:01:45,271 --> 00:01:49,208 sobre o que é uma análise descritiva, aqui fica um breve resumo. 28 00:01:49,208 --> 00:01:52,639 Então, como nós falamos, nós precisamos de uma base de dados 29 00:01:52,639 --> 00:01:54,480 para poder analisar isso. 30 00:01:54,480 --> 00:01:57,683 Vamos rodar essas duas linhas aqui, criar os nossos dados 31 00:01:57,683 --> 00:02:00,858 para ter esse comparativo do antes e o depois. 32 00:02:02,055 --> 00:02:03,601 Se pegar aqui... 33 00:02:03,601 --> 00:02:05,481 Perdão. Vamos dar uns Enters aqui. 34 00:02:05,481 --> 00:02:08,961 Sempre apertamos alguns Enters para ficar uma área limpa aqui. 35 00:02:08,961 --> 00:02:12,865 Então nós estamos criando aqui um comentário, uma hashtag. 36 00:02:12,865 --> 00:02:17,637 O tempo antes da performance: hora um, hora dois, hora três. 37 00:02:17,637 --> 00:02:21,507 Aqui nós temos quatro, cinco, seis, sete, oito. 38 00:02:21,507 --> 00:02:24,410 É uma análise do antes e o depois 39 00:02:24,410 --> 00:02:28,147 em oito horas de execução de um código, por exemplo. 40 00:02:28,147 --> 00:02:30,616 Antes de implementar a melhoria no algoritmo, 41 00:02:30,616 --> 00:02:34,419 e depois de implementar a melhoria no algoritmo. 42 00:02:34,419 --> 00:02:36,329 Vamos apertar o Enter. 43 00:02:36,329 --> 00:02:39,831 E aí, como sempre, é legal visualizar como estão os dados. 44 00:02:39,831 --> 00:02:43,162 Olhe, tempo antes... Aperte o Enter. 45 00:02:43,162 --> 00:02:44,826 Opa, o que eu errei aqui? 46 00:02:44,826 --> 00:02:45,956 Print... 47 00:02:45,956 --> 00:02:48,087 Ah, "tempos", está vendo? 48 00:02:48,087 --> 00:02:49,577 O que eu errei? 49 00:02:49,577 --> 00:02:51,037 "tempo antes"... 50 00:02:51,037 --> 00:02:52,905 Agora vai funcionar. 51 00:02:52,905 --> 00:02:54,488 Aqui tem a letra "s". 52 00:02:54,488 --> 00:02:55,608 São tempos, né? 53 00:02:55,608 --> 00:02:59,053 Eu não tinha colocado o "s", então ele falou: "Opa!, Not found". 54 00:02:59,053 --> 00:03:00,813 Not found quer dizer que não existe. 55 00:03:00,813 --> 00:03:02,682 Ai depois eu coloquei certo. 56 00:03:02,682 --> 00:03:06,400 Então sigam aquela velha dica, né, ou vocês colocam aqui print, 57 00:03:06,400 --> 00:03:11,991 vocês copiam o nome da variável e colocam aqui no conjunto de dados, 58 00:03:11,991 --> 00:03:16,562 ou você digita, e ele dá a sugestão do nome. 59 00:03:16,562 --> 00:03:18,197 Aqui, no caso, ele deu a sugestão. 60 00:03:18,197 --> 00:03:20,800 A sugestão está correta, eu vou apertar. 61 00:03:20,800 --> 00:03:25,471 Então temos a análise do antes e o depois. 62 00:03:25,471 --> 00:03:29,008 Facilitando a interpretação aqui, se formos verificar, 63 00:03:29,008 --> 00:03:32,614 como sempre temos um conjunto de valores bem pequeno 64 00:03:32,614 --> 00:03:35,105 para facilitar a nossa análise. 65 00:03:36,182 --> 00:03:40,953 Olhando, nós já podemos fazer esse resultado prévio sem o R. 66 00:03:40,953 --> 00:03:44,239 O antes e o depois, o depois ficou melhor. 67 00:03:44,239 --> 00:03:46,859 Então implementou-se a melhoria no algoritmo 68 00:03:46,859 --> 00:03:50,529 e houve realmente uma melhor performance no sistema. 69 00:03:50,529 --> 00:03:56,168 Inclusive, olhando em todas as horas de execução, realmente está melhor. 70 00:03:56,168 --> 00:03:58,239 Eu, olhando, consigo. 71 00:03:58,239 --> 00:04:02,318 Mas se fosse uma análise com 300 horas de execução, 72 00:04:02,318 --> 00:04:05,578 iria ficar bem difícil vocês conseguirem olhando. 73 00:04:05,578 --> 00:04:09,456 Então vamos pedir para o R fazer para nós. 74 00:04:09,456 --> 00:04:10,282 O que vamos fazer? 75 00:04:10,282 --> 00:04:11,650 Vamos para a próxima parte. 76 00:04:11,650 --> 00:04:14,787 Então criamos o antes e o depois, 77 00:04:14,787 --> 00:04:17,316 Vamos apertar mais alguns Enters aqui. 78 00:04:17,316 --> 00:04:20,059 É sempre legal para facilitar a nossa área. 79 00:04:20,059 --> 00:04:22,862 Vamos para uma próxima parte. 80 00:04:22,862 --> 00:04:25,698 Nós vamos agora gerar todo o cenário 81 00:04:25,698 --> 00:04:30,536 para calcular as medidas descritivas para o antes. 82 00:04:30,536 --> 00:04:35,207 Então nós vamos fazer primeiro uma análise do antes, preparar esses dados do antes. 83 00:04:35,207 --> 00:04:40,179 Aqui nós vamos calcular a média simples do antes, 84 00:04:40,179 --> 00:04:43,983 e vamos calcular a mediana do antes. 85 00:04:43,983 --> 00:04:45,149 Vamos aqui? 86 00:04:45,149 --> 00:04:48,888 Eu vou apertar o Enter, vou apertar print. 87 00:04:48,888 --> 00:04:50,573 Olhe, média... 88 00:04:50,573 --> 00:04:55,364 Aí aqui, aquela velha história, ou você copia "media_antes", 89 00:04:55,364 --> 00:04:58,464 ou você deixa ele fazer a sugestão para você. 90 00:04:58,464 --> 00:05:00,099 Então essa é a média. 91 00:05:00,099 --> 00:05:04,870 Se somar todos esses valores, são quatro, cinco, seis, oito valores. 92 00:05:04,870 --> 00:05:06,405 São oito horas de análise. 93 00:05:06,405 --> 00:05:09,675 Somo e divido por oito, vai ser a média. 94 00:05:09,675 --> 00:05:14,474 Além de calcular a média que acabamos de visualizar, 95 00:05:14,474 --> 00:05:16,615 nós também pedimos para calcular a mediana. 96 00:05:16,615 --> 00:05:18,862 Vamos visualizar o valor da mediana? 97 00:05:20,252 --> 00:05:23,922 "Ô, Rafa, estamos tendo que utilizar os conceitos que aprendemos anteriormente." 98 00:05:23,922 --> 00:05:25,357 Sim. Isso é bom, né? 99 00:05:25,357 --> 00:05:27,669 As coisas vão se juntando. 100 00:05:27,669 --> 00:05:28,869 E aqui a mediana. 101 00:05:28,869 --> 00:05:30,529 Opa, um sinalzinho a mais. 102 00:05:30,529 --> 00:05:34,400 Então esse é o valor da média e esse é o valor da mediana. 103 00:05:34,400 --> 00:05:39,371 São informações referentes aos dados do antes, tudo bem? 104 00:05:39,371 --> 00:05:43,289 Então está aqui o nosso script, o resumo para vocês. 105 00:05:43,289 --> 00:05:47,546 Já criamos os dados do antes e o depois, 106 00:05:47,546 --> 00:05:52,963 já fizemos aqui o cálculo da média e da mediana. 107 00:05:52,963 --> 00:05:54,553 Também já fizemos. 108 00:05:54,553 --> 00:05:57,489 E agora nós vamos para uma próxima parte. 109 00:05:57,489 --> 00:06:01,660 Eu estou copiando essa parte do código, isolando-o, e vamos trazer aqui para baixo. 110 00:06:01,660 --> 00:06:05,177 Como sempre é legal apertar um pouquinho de Enter aqui 111 00:06:05,177 --> 00:06:08,265 para isolar a área do código para podermos interpretar. 112 00:06:09,682 --> 00:06:13,071 Deixe-me limpar um pouquinho aqui para facilitar a visualização. 113 00:06:13,071 --> 00:06:16,809 Opa,.. Damos um Control + Z aqui. 114 00:06:16,809 --> 00:06:19,089 Antes de apertar o Enter, você dá um Control + Z. 115 00:06:20,579 --> 00:06:22,815 "E agora, Rafa, o que nós temos?" 116 00:06:22,815 --> 00:06:27,777 Nós temos três linhas de comentário aqui para deixar para vocês, tá? 117 00:06:27,777 --> 00:06:31,265 Lembrando que às vezes esse é o momento que você pode dar uma pausa no vídeo, 118 00:06:31,265 --> 00:06:33,759 antes de eu falar ou após eu falar. 119 00:06:33,759 --> 00:06:38,664 Por quê? Porque você precisa entender esses comentários que não fazem parte da execução. 120 00:06:38,664 --> 00:06:43,969 E depois que você conseguir entender essas três linhas de comentários, 121 00:06:43,969 --> 00:06:46,872 nós poderemos fazer a execução do que precisamos. 122 00:06:46,872 --> 00:06:48,175 Vamos entender? 123 00:06:48,175 --> 00:06:50,235 O que eu criei para vocês então? 124 00:06:50,235 --> 00:06:51,642 O "moda_antes". 125 00:06:51,642 --> 00:06:53,502 É o nome de uma variável. 126 00:06:53,502 --> 00:06:55,480 Aí é sinal de menor, tracinho. 127 00:06:55,480 --> 00:06:56,682 "Ô, Rafa, já entendi. 128 00:06:56,682 --> 00:07:01,014 O resultado daqui será armazenado no moda_antes." 129 00:07:01,014 --> 00:07:03,155 "Mas o que nós estamos fazendo, Rafa?" 130 00:07:03,155 --> 00:07:04,015 Vamos aqui. 131 00:07:04,015 --> 00:07:08,495 Primeiro vem uma instrução aqui do R, "as.numeric". 132 00:07:08,495 --> 00:07:10,239 O que é isso? 133 00:07:10,239 --> 00:07:15,307 Vocês vão usar muito ainda dentro da linguagem R na parte estatística. 134 00:07:15,307 --> 00:07:19,304 É utilizado para converter os valores em vetor numérico. 135 00:07:19,304 --> 00:07:22,586 Aí pode vir uma pergunta na sua cabeça: 136 00:07:22,586 --> 00:07:24,476 "Mas, Rafa, como assim? 137 00:07:24,476 --> 00:07:26,211 Os dados são numéricos." 138 00:07:26,211 --> 00:07:31,244 Você sabe porque o conjunto de dados, essas oito horas, é pequeno. 139 00:07:31,244 --> 00:07:32,584 Mas quem garante isso? 140 00:07:32,584 --> 00:07:35,787 É sempre bom você confirmar, tá? 141 00:07:35,787 --> 00:07:39,458 Então, voltando aqui, olhando, nós sabemos que eles são numéricos, 142 00:07:39,458 --> 00:07:43,128 mas você tem que garantir isso para poder fazer essa análise. 143 00:07:43,128 --> 00:07:46,231 É isso que o as.numeric faz. 144 00:07:46,231 --> 00:07:49,701 Se não for, tiver algum probleminha lá e o dado for possível de conversão para numérico, 145 00:07:49,701 --> 00:07:52,468 ele vai ser feito, é o as.numeric. 146 00:07:53,805 --> 00:07:57,637 E aí nós vamos continuar aqui a interpretar essa parte dessa instrução. 147 00:07:58,677 --> 00:08:00,271 Aqui são os nomes. 148 00:08:00,271 --> 00:08:01,221 O que são os nomes? 149 00:08:01,221 --> 00:08:02,681 É o conjunto de valores. 150 00:08:02,681 --> 00:08:04,716 Nós temos apenas um conjunto de valores. 151 00:08:04,716 --> 00:08:05,884 Poderíamos ter mais? 152 00:08:05,884 --> 00:08:06,777 Sim. 153 00:08:06,777 --> 00:08:09,387 Se fosse um dataframe com diversas colunas? Poderia. 154 00:08:09,387 --> 00:08:12,648 Aqui nós temos uma linha, ou uma coluna. 155 00:08:12,648 --> 00:08:15,241 É um exemplo um pouco mais simples. 156 00:08:15,241 --> 00:08:16,881 E aí você entra aqui no "sort". 157 00:08:16,881 --> 00:08:18,251 O que seria o sort? 158 00:08:18,251 --> 00:08:22,238 Novamente, fica aqui um comentário para vocês. 159 00:08:22,238 --> 00:08:26,004 Vocês já tenham utilizado em alguma outra linguagem de programação. 160 00:08:26,004 --> 00:08:28,240 Quem não usou, não tem problema nenhum, tá? 161 00:08:28,240 --> 00:08:30,008 Esse é o momento de aprender. 162 00:08:30,008 --> 00:08:34,024 Ele é utilizado para ordenar os elementos. 163 00:08:34,024 --> 00:08:39,317 Porque se vocês pegarem aqui, esse o primeiro aqui do antes, 164 00:08:39,317 --> 00:08:42,254 não é obrigatório que ele esteja numa ordem crescente ou decrescente. 165 00:08:42,254 --> 00:08:43,371 "Porque não, Rafa?" 166 00:08:43,371 --> 00:08:44,145 É uma análise. 167 00:08:44,145 --> 00:08:50,428 Supondo que, na primeira hora, demorou 220 segundos para executar na segunda, 210. 168 00:08:50,428 --> 00:08:54,399 Então vai ser difícil você encontrar na ordem crescente ou decrescente. 169 00:08:54,399 --> 00:08:57,836 Você está olhando hora a hora como ele se comporta. 170 00:08:57,836 --> 00:08:59,971 O que você vai fazer então? 171 00:08:59,971 --> 00:09:02,807 Por isso que vem essa instrução sort. 172 00:09:02,807 --> 00:09:07,389 Você vai dizer que, nessa instrução true ou false, 173 00:09:07,389 --> 00:09:11,750 se você colocar true, você está pedindo para que essa análise 174 00:09:11,750 --> 00:09:15,887 seja feita numa ordem decrescente. 175 00:09:15,887 --> 00:09:20,587 Se você colocar false, ele vai fazer uma ordem crescente. 176 00:09:20,587 --> 00:09:23,278 Lembrando que decrescente, do maior para o menor, 177 00:09:23,278 --> 00:09:25,397 que vai ser como ele vai analisar esse caso. 178 00:09:25,397 --> 00:09:30,168 E se fosse crescente, do menor para o maior. 179 00:09:30,168 --> 00:09:32,804 Esse é o sort. 180 00:09:32,804 --> 00:09:36,107 Bem recheada de conhecimento essa instrução aqui. 181 00:09:36,107 --> 00:09:38,710 E o que é o "table"? 182 00:09:38,710 --> 00:09:41,513 É o conjunto de dados para ser analisado. 183 00:09:41,513 --> 00:09:45,717 Lembrando, aqui é uma linha só, que é o tempo antes, 184 00:09:45,717 --> 00:09:47,819 mas poderia ser um dataframe. 185 00:09:47,819 --> 00:09:51,590 Então esse é o conjunto de dados que nós estamos pedindo para analisar. 186 00:09:52,590 --> 00:09:54,063 Vamos apertar um Enter. 187 00:09:54,993 --> 00:09:56,028 E aí, o que nós temos? 188 00:09:56,028 --> 00:09:57,507 "Rafa, e agora?" 189 00:09:57,507 --> 00:09:58,797 Quer olhar o resultado? 190 00:09:58,797 --> 00:09:59,893 Vamos olhar, lógico. 191 00:09:59,893 --> 00:10:01,103 "print"... 192 00:10:01,103 --> 00:10:05,937 Ou você copia e cola, ou você digita e deixa ele dar a sugestão. 193 00:10:05,937 --> 00:10:08,173 Realmente é esse que eu quero. 194 00:10:08,173 --> 00:10:13,044 Se eu apertar o Enter, o que ele nos trouxe de resultado? 195 00:10:13,044 --> 00:10:17,151 Essa análise chegou num resultado de 210. 196 00:10:17,151 --> 00:10:20,150 Mas o que seria esse número 210? 197 00:10:20,150 --> 00:10:23,187 Vamos continuar aqui, aí eu vou explicar para vocês. 198 00:10:23,187 --> 00:10:26,200 Aqui foi a introdução, os dois dados, 199 00:10:26,200 --> 00:10:29,827 calculamos a média e a mediana do antes. 200 00:10:29,827 --> 00:10:33,464 E aqui, nós conseguimos fazer a moda, 201 00:10:33,464 --> 00:10:37,765 qual o número moda que é gerado com essa análise desses dados, desse conjunto. 202 00:10:37,765 --> 00:10:42,038 De novo, continuamos com o intervalo de valores do antes. 203 00:10:42,038 --> 00:10:44,275 Ainda não fizemos o depois. 204 00:10:44,275 --> 00:10:45,500 Vamos continuar? 205 00:10:45,500 --> 00:10:50,548 Aqui nós vamos para uma outra parte do nosso código da nossa análise. 206 00:10:50,548 --> 00:10:54,803 Eu vou copiar a descer um pouquinho. 207 00:10:55,620 --> 00:10:58,623 Novamente, aquela velha dica: se possível... 208 00:10:58,623 --> 00:11:02,493 É que aqui eu que estou transmitindo conhecimento para vocês; 209 00:11:02,493 --> 00:11:03,787 Se você quiser, não precisa apertar o Enter. 210 00:11:03,787 --> 00:11:08,232 Mas é legal para vocês dividirem por partes essa análise, tá? 211 00:11:08,232 --> 00:11:10,168 Aqui, novamente, tem uma hashtag. 212 00:11:10,168 --> 00:11:14,611 Deixe-me só limpar o código aqui para quando executá-lo depois não acontecer nenhum erro. 213 00:11:16,804 --> 00:11:18,476 Aqui eu deixo esse comentário, né? 214 00:11:18,476 --> 00:11:21,121 Nós iremos verificar a variância. 215 00:11:21,121 --> 00:11:23,181 O que é a variância? 216 00:11:23,181 --> 00:11:28,319 É uma medida estatística que indica a dispersão dos valores em relação à média. 217 00:11:28,319 --> 00:11:29,774 Nós não temos a média? 218 00:11:29,774 --> 00:11:31,689 O quanto os valores... 219 00:11:31,689 --> 00:11:32,989 "Que valores, Rafa?" 220 00:11:32,989 --> 00:11:38,629 O quanto cada um desses valores está distantes da média. 221 00:11:38,629 --> 00:11:40,298 Por isso que nós fizemos aqui, olhe. 222 00:11:40,298 --> 00:11:41,719 Essa não é a média? 223 00:11:41,719 --> 00:11:43,279 Deu 218. 224 00:11:43,279 --> 00:11:47,050 Se eu olhar aqui, me parece... 225 00:11:47,050 --> 00:11:50,308 Olhando aqui, interpretando, qual parece que está mais distante? 226 00:11:50,308 --> 00:11:51,976 Mas não vamos deixar o computador fazer por nós, né? 227 00:11:51,976 --> 00:11:53,264 Talvez seja esse. 228 00:11:53,264 --> 00:11:56,414 Qual está mais perto de 218. 229 00:11:56,414 --> 00:11:58,884 Olhando aqui, o valor 220, tá? 230 00:12:00,084 --> 00:12:02,358 Mas deixe que o computador nos fale. 231 00:12:02,358 --> 00:12:08,192 Nesse intervalo de valores, quais estão mais perto ou menos perto da média? 232 00:12:08,192 --> 00:12:13,555 Quanto maior a variância, mais dispersos os dados estão. 233 00:12:13,555 --> 00:12:20,211 Ou seja, o valor do resultado da variância que nós vamos pedir para calcular agora, 234 00:12:20,211 --> 00:12:24,909 quanto maior o número, mais distante estará da média. 235 00:12:24,909 --> 00:12:30,248 Então tem uma disparidade aí, uma distância da média dos dados. 236 00:12:30,248 --> 00:12:32,287 Aí vamos executar. 237 00:12:32,287 --> 00:12:35,506 Como sempre, para executar, eu vou apertar um Enter aqui, 238 00:12:35,506 --> 00:12:38,799 e aí nós vamos analisar, olhe: variância antes, 239 00:12:38,799 --> 00:12:42,059 nós queremos encontrar como eu acho o valor da variância, 240 00:12:42,059 --> 00:12:44,996 que é isso que acabamos de explicar aqui. 241 00:12:44,996 --> 00:12:49,533 E, novamente, é melhor você fazer uma pausa, anotar, 242 00:12:49,533 --> 00:12:53,203 verificar o material escrito que está disponível para vocês 243 00:12:53,203 --> 00:12:55,906 para depois você conseguir executar aqui. 244 00:12:55,906 --> 00:13:01,012 Então, aqui, como eu consigo armazenar o valor da variância 245 00:13:01,012 --> 00:13:05,006 do conjunto de dados tempos_antes? 246 00:13:05,916 --> 00:13:09,587 Como eu consigo pedir para ele achar a variância aqui? 247 00:13:09,587 --> 00:13:10,631 É simples. 248 00:13:10,631 --> 00:13:13,691 Depois que você entendeu o conceito, é simples. 249 00:13:13,691 --> 00:13:19,130 Você cria uma variável, que, nesse caso, eu chamei de "variancia_antes". 250 00:13:19,130 --> 00:13:22,892 Aqui eu coloco a instrução, que é "var", v-a-r, 251 00:13:22,892 --> 00:13:25,029 e o nome do conjunto de dados. 252 00:13:25,029 --> 00:13:27,296 "Ah, Rafa, eu quero dar uma olhadinha". 253 00:13:27,296 --> 00:13:29,106 Quer dar uma olhadinha? 254 00:13:29,106 --> 00:13:30,698 Podemos, não tem problema não. 255 00:13:30,698 --> 00:13:34,390 Olhe, "variancia_antes", não é isso? 256 00:13:34,390 --> 00:13:41,138 Se apertarmos o Enter, conseguiremos saber qual que é o valor, o resultado da variância. 257 00:13:41,138 --> 00:13:43,524 Agora o desvio-padrão. 258 00:13:43,524 --> 00:13:46,924 O desvio-padrão, vocês já têm esse conhecimento. 259 00:13:46,924 --> 00:13:49,226 Como calcular o desvio padrão? 260 00:13:49,226 --> 00:13:50,431 Vamos criar uma variável. 261 00:13:50,431 --> 00:13:53,537 Desvio-padrão antes porque nós estamos analisando 262 00:13:53,537 --> 00:13:56,567 antes da implementação da melhoria do algoritmo, 263 00:13:56,567 --> 00:14:00,271 "sd" é a instrução, e qual é o conjunto de dados. 264 00:14:00,271 --> 00:14:02,648 "Rafa, podemos visualizar?" 265 00:14:02,648 --> 00:14:04,108 Lógico que podemos. 266 00:14:04,108 --> 00:14:05,681 Qual é o nome da variável? 267 00:14:05,681 --> 00:14:08,350 "desvio_padrao_antes". 268 00:14:09,480 --> 00:14:10,681 Legal. 269 00:14:10,681 --> 00:14:16,820 E aqui nós temos que o desvio padrão para esse conjunto de valores é 7.03. 270 00:14:16,820 --> 00:14:23,518 Agora que conseguimos encontrar o valor da variância e também do desvio-padrão, 271 00:14:23,518 --> 00:14:28,966 vamos continuar para conseguir concluir a análise que queremos do antes e o depois. 272 00:14:28,966 --> 00:14:30,467 Então, o que nós já vimos? 273 00:14:30,467 --> 00:14:33,395 Retomamos essa parte, criamos os dados, 274 00:14:33,395 --> 00:14:38,208 criamos a média e a mediana do antes, 275 00:14:38,208 --> 00:14:40,611 conseguimos achar a moda, 276 00:14:40,611 --> 00:14:45,869 acabamos de descobrir a variância e o desvio-padrão. 277 00:14:45,869 --> 00:14:48,485 Agora vamos para essa próxima parte da análise. 278 00:14:48,485 --> 00:14:50,798 Vou copiar aqui para baixo. 279 00:14:50,798 --> 00:14:55,025 Aqui, como sempre, eu vou apertar alguns Enters 280 00:14:55,025 --> 00:14:58,362 para facilitar para vocês a visualização. 281 00:14:58,362 --> 00:15:00,064 Vou apertaram um Control + V. 282 00:15:00,064 --> 00:15:02,655 Deixe-me arrumar aqui para explicar. 283 00:15:02,655 --> 00:15:04,935 O que nós vamos fazer agora então? 284 00:15:04,935 --> 00:15:09,416 Olhe, calculando medidas descritivas para o depois agora, né? 285 00:15:09,416 --> 00:15:11,727 Fizemos o antes, vamos para o depois. 286 00:15:11,727 --> 00:15:15,813 Agora nós iremos repetir o script que nós fizemos anteriormente 287 00:15:15,813 --> 00:15:19,283 para a parte da execução do antes. 288 00:15:19,283 --> 00:15:20,918 Agora nós iremos fazer para o depois. 289 00:15:20,918 --> 00:15:23,887 Lembre-se do cenário, do case. 290 00:15:23,887 --> 00:15:28,759 Tem um sistema que não estava com uma performance tão boa de algoritmo. 291 00:15:28,759 --> 00:15:33,297 Então fizeram uma análise, extraíram os tempos de execução 292 00:15:33,297 --> 00:15:36,200 antes da implementação da melhoria no algoritmo, 293 00:15:36,200 --> 00:15:39,603 e aí precisava-se fazer uma análise do depois. 294 00:15:39,603 --> 00:15:42,339 Então, no depois, nós temos a base de dados, 295 00:15:42,339 --> 00:15:43,607 como está a performance do depois, 296 00:15:43,607 --> 00:15:47,911 e agora o R vai verificar o antes e o depois 297 00:15:47,911 --> 00:15:52,583 para fazer esse comparativo e conseguir ter uma análise descritiva. 298 00:15:52,583 --> 00:15:55,553 Fizemos para o antes, vamos fazer a mesma coisa agora 299 00:15:55,553 --> 00:15:58,660 para o conjunto de dados do depois. Vem aqui comigo. 300 00:15:58,660 --> 00:16:04,492 Então, como sempre, eu deixo um comentário para vocês. 301 00:16:04,492 --> 00:16:07,998 Olhe, calculando medidas descritivas para depois. 302 00:16:07,998 --> 00:16:10,362 Nós iremos achar a média. 303 00:16:10,362 --> 00:16:12,202 A média de quem? 304 00:16:12,202 --> 00:16:16,347 Lembre-se, agora nós vamos trabalhar com essa base de dados, 305 00:16:16,347 --> 00:16:19,142 a performance do algoritmo do depois. 306 00:16:19,142 --> 00:16:21,244 Então vamos descer um pouquinho. 307 00:16:21,244 --> 00:16:22,583 Estamos aqui. 308 00:16:22,583 --> 00:16:25,253 Criei uma variável chamada "media_depois". 309 00:16:25,253 --> 00:16:27,776 Esse é o nome da base de dados. 310 00:16:27,776 --> 00:16:31,655 E vamos também achar o valor da mediana. 311 00:16:31,655 --> 00:16:33,386 Se eu apertar o Enter aqui... 312 00:16:33,386 --> 00:16:39,947 É sempre legal visualizar o resultado, olhe, media_depois. 313 00:16:39,947 --> 00:16:41,465 Vou apertar o Enter. 314 00:16:41,465 --> 00:16:44,634 Então essa é a média da performance do depois. 315 00:16:44,634 --> 00:16:47,545 E agora nós também vamos achar o valor da mediana. 316 00:16:47,545 --> 00:16:48,858 Visualizar, perdão. 317 00:16:48,858 --> 00:16:51,708 Nós já temos o valor, né? 318 00:16:51,708 --> 00:16:55,538 "print(mediana_depois)". 319 00:16:55,538 --> 00:16:56,680 Eu vou apertar o Enter. 320 00:16:56,680 --> 00:17:00,579 Então essa é a média, e essa é a mediana do depois. 321 00:17:00,579 --> 00:17:02,319 Vou subir aqui. 322 00:17:02,319 --> 00:17:05,756 Vamos pegar o nosso script, tá? 323 00:17:05,756 --> 00:17:10,908 Já fizemos do antes, agora estamos calculando do depois. 324 00:17:10,908 --> 00:17:13,730 Vamos achar agora o valor da moda. 325 00:17:13,730 --> 00:17:16,351 É a mesma coisa que nós fizemos do antes, 326 00:17:16,351 --> 00:17:18,668 só que agora é a moda para o depois. 327 00:17:18,668 --> 00:17:23,515 Vamos apertar alguns Enters para ficar limpa a nossa área de programação 328 00:17:23,515 --> 00:17:25,025 para podermos entender. 329 00:17:25,025 --> 00:17:26,610 criar a variável moda_depois. 330 00:17:26,610 --> 00:17:32,391 "as numeric" serve para converter os valores numéricos, 331 00:17:32,391 --> 00:17:33,881 por mais que estejam ali. 332 00:17:33,881 --> 00:17:37,920 Mas é bom confirmar que os valores são um número, 333 00:17:37,920 --> 00:17:39,523 eles estão como número. 334 00:17:39,523 --> 00:17:44,227 E aqui nós temos a parte da organização dos dados em ordem decrescente. 335 00:17:44,227 --> 00:17:50,485 E aqui, qual é o conjunto de dados que vai ser feita essa moda, o valor da moda. 336 00:17:50,485 --> 00:17:52,836 Se eu apertar o Enter... É igualzinho ao anterior. 337 00:17:52,836 --> 00:17:58,430 Só muda que agora nós estamos fazendo a análise para os dados do depois 338 00:17:58,430 --> 00:18:01,711 após implementação do algoritmo. 339 00:18:01,711 --> 00:18:07,917 Então, a moda para o depois resultou em um valor de 190. 340 00:18:07,917 --> 00:18:13,089 Vamos voltar mais um pouquinho aqui, pegar o script que nós deixamos. 341 00:18:13,089 --> 00:18:15,492 A palavra não é pré-pronto. É pronto. 342 00:18:15,492 --> 00:18:16,581 E vamos verificar. 343 00:18:16,581 --> 00:18:21,931 Já geramos a moda, e agora nós vamos criar a variância e o desvio-padrão. 344 00:18:21,931 --> 00:18:24,734 Vamos descobrir qual é o valor da variância 345 00:18:24,734 --> 00:18:27,562 e qual o valor do desvio-padrão para o depois. 346 00:18:27,562 --> 00:18:29,789 Irei apertar novamente alguns Enters. 347 00:18:30,774 --> 00:18:32,643 Vou dar um Control + V. 348 00:18:32,643 --> 00:18:33,703 Deixe-me limpar aqui. 349 00:18:33,703 --> 00:18:37,380 Se executarmos com esse tracinho aqui, vai ocorrer um erro. 350 00:18:37,380 --> 00:18:39,682 O que nós temos aqui então? 351 00:18:39,682 --> 00:18:42,798 Criamos uma variável chamada variancia_depois. 352 00:18:42,798 --> 00:18:46,923 A instrução aqui é para calcular a variância dessa base de dados 353 00:18:46,923 --> 00:18:49,159 utilizando o VAR e o desvio-padrão. 354 00:18:49,159 --> 00:18:51,528 Vou apertar um Enter. 355 00:18:51,528 --> 00:18:53,630 Nós esperávamos que desse certo, né? 356 00:18:53,630 --> 00:18:57,967 E aqui vamos só visualizar para confirmar que deu certo. 357 00:18:57,967 --> 00:18:59,202 Visualizou. 358 00:18:59,202 --> 00:19:05,090 E agora nós vamos verificar o valor do desvio-padrão que foi encontrado. 359 00:19:05,090 --> 00:19:07,795 "desvio_padrao_depois". 360 00:19:07,795 --> 00:19:09,537 Opa, tem um errinho aqui, pessoal. 361 00:19:09,537 --> 00:19:10,607 Cuidado aqui! 362 00:19:10,607 --> 00:19:11,957 Eu visualizei o antes. 363 00:19:11,957 --> 00:19:14,617 Não era o antes e sim o depois. 364 00:19:14,617 --> 00:19:15,351 Vamos ver. 365 00:19:15,351 --> 00:19:18,855 Oh, então aqui, print... 366 00:19:18,855 --> 00:19:22,554 Não é um erro do script que nós criamos e sim na hora de visualizar. 367 00:19:22,554 --> 00:19:24,360 O depois, tá? 368 00:19:24,360 --> 00:19:27,430 Então essa é a variância do antes que tínhamos feito anteriormente. 369 00:19:27,430 --> 00:19:30,200 E agora esse do depois, que acabamos de fazer, está vendo? 370 00:19:30,200 --> 00:19:35,672 Tomem cuidado, senão vocês podem visualizar a informação que vocês não queriam. 371 00:19:35,672 --> 00:19:36,739 Print. 372 00:19:36,739 --> 00:19:42,361 Agora nós vamos verificar o valor do desvio-padrão do depois, hein! 373 00:19:42,361 --> 00:19:43,431 Novamente, do depois. 374 00:19:43,431 --> 00:19:45,381 O antes, nós já passamos. 375 00:19:45,381 --> 00:19:48,751 Então esse é o valor da variância do depois, 376 00:19:48,751 --> 00:19:52,488 e esse o valor do desvio-padrão do depois. 377 00:19:52,488 --> 00:19:58,122 Agora vamos subir aqui e verificar o nosso script que deixamos pronto aqui. 378 00:19:58,122 --> 00:19:59,128 Legal! 379 00:19:59,128 --> 00:20:01,768 Nós já conseguimos criar... 380 00:20:01,768 --> 00:20:07,942 Oh, vamos lembrar: a média, mediana, a moda, a variância, e o desvio-padrão, 381 00:20:07,942 --> 00:20:11,240 para a base de dados do antes e do depois. 382 00:20:11,240 --> 00:20:15,411 Agora podemos dizer que a gente precisa juntar tudo isso 383 00:20:15,511 --> 00:20:18,815 para visualizar esses valores aqui. 384 00:20:18,815 --> 00:20:22,285 Na verdade, seria uma impressão de tudo que nós fizemos até agora. 385 00:20:22,318 --> 00:20:26,089 Só vou apertar alguns em três aqui, mas a última parte 386 00:20:26,189 --> 00:20:27,924 são apenas duas instruções agora. 387 00:20:27,924 --> 00:20:29,559 Opa, vou apagar. 388 00:20:29,559 --> 00:20:33,196 Controlo ver o que essa última parte, Rafa, 389 00:20:33,262 --> 00:20:36,532 imprimindo os resultados aqui vamos trabalhar 390 00:20:36,532 --> 00:20:40,670 com todas as informações do antes e o depois. 391 00:20:40,737 --> 00:20:41,337 Vou apertar. 392 00:20:41,337 --> 00:20:45,708 Então é assim simples de visualizar 393 00:20:45,775 --> 00:20:49,512 o entender que está na riqueza, entender todas essas informações. 394 00:20:49,579 --> 00:20:50,646 Então o que nós temos aqui? 395 00:20:50,646 --> 00:20:54,550 Olha aqui, antes disso, aqui é um texto sempre. 396 00:20:54,550 --> 00:20:57,720 Eu quero juntar um texto com valores, eu coloco teste, aí 397 00:20:57,720 --> 00:20:59,055 eu coloco a informação, lembra? 398 00:20:59,055 --> 00:21:00,723 Divido por vírgula. 399 00:21:00,723 --> 00:21:04,460 E o nome da variável só aqui, na verdade é uma impressão 400 00:21:04,460 --> 00:21:07,163 mostrando tudo o que nós fizemos anteriormente. 401 00:21:07,163 --> 00:21:08,865 Vamos pegar o outro script. 402 00:21:08,865 --> 00:21:11,601 Poderíamos fazer aqui na mão agora, poderíamos talvez 403 00:21:11,601 --> 00:21:15,771 demorar só um pouquinho aqui para vocês, pra gente digitar junto 404 00:21:15,872 --> 00:21:18,374 para digitarmos essas informações. 405 00:21:18,374 --> 00:21:20,209 Nós apertar mais alguns inteiros. 406 00:21:20,209 --> 00:21:23,679 Aqui, como sempre, vou apertar muito o que nós temos aqui 407 00:21:23,679 --> 00:21:27,183 até um momento de uma revisão antes, 408 00:21:27,250 --> 00:21:30,920 a média antes e esse valor média antes 409 00:21:31,020 --> 00:21:34,423 e esse valor mediano 410 00:21:34,490 --> 00:21:36,359 antes mediana antes. 411 00:21:36,359 --> 00:21:39,328 Então, aqui nós só juntamos uma impressão de tudo o que nós 412 00:21:39,328 --> 00:21:42,698 projetamos anteriormente e aqui do depois. 413 00:21:42,765 --> 00:21:46,969 E é agora que fica o que se a gente pegar o nosso TO do nosso script, 414 00:21:47,036 --> 00:21:48,704 pegamos desde uma introdução. 415 00:21:48,704 --> 00:21:51,340 O que é uma análise descritiva, 416 00:21:51,340 --> 00:21:55,544 duas bases de dados com verificamos o antes e o depois, 417 00:21:55,611 --> 00:22:00,516 calculamos a média mediana, conseguimos nos achar o valor da moda 418 00:22:00,516 --> 00:22:04,920 também, tanto para os dados do antes como depois 419 00:22:04,987 --> 00:22:08,290 e enfim, só voltando, descendo um pouquinho aqui, 420 00:22:08,357 --> 00:22:11,994 agora a gente consegue imprimir e com essas informações 421 00:22:11,994 --> 00:22:15,998 em mãos nós conseguimos obter os nossos resultados. 422 00:22:16,065 --> 00:22:19,468 Então aqui é o conjunto 423 00:22:19,568 --> 00:22:20,669 mostrando o resultado. 424 00:22:20,669 --> 00:22:22,471 Todas as informações numa impressão 425 00:22:22,471 --> 00:22:26,175 só, tudo o que calculamos antes, tudo que calculamos o depois. 426 00:22:26,242 --> 00:22:28,411 E agora que você consegue fazer a interpretação, 427 00:22:28,411 --> 00:22:33,482 vamos pegar o mais simples aqui a média de tempo de execução 428 00:22:33,582 --> 00:22:36,919 do antes antes de implementar a melhoria no algoritmo. 429 00:22:37,019 --> 00:22:37,720 O tempo de execução. 430 00:22:37,720 --> 00:22:41,891 Supondo que fossem segundos, demorava 218/2. 431 00:22:41,957 --> 00:22:44,760 Agora caiu para 196 e por aí vai. 432 00:22:44,760 --> 00:22:50,432 Você consegue comparar o antes e o depois de cada uma dessas informações 433 00:22:50,499 --> 00:22:53,169 para saber se realmente 434 00:22:53,169 --> 00:22:56,138 melhorou a performance do sistema 435 00:22:56,138 --> 00:22:59,508 após a implementação da melhoria do algoritmo? 436 00:22:59,608 --> 00:23:01,210 Eu tenho certeza que vocês conseguiram 437 00:23:01,210 --> 00:23:04,980 entender a importância de saber utilizar todas essas instruções, 438 00:23:05,014 --> 00:23:09,018 a linguagem R e até mesmo saber interpretar esses resultados e.