Ferramentas do usuário

Ferramentas do site


opensci:2022:trab1

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anteriorRevisão anterior
opensci:2022:trab1 [2024/04/10 18:25] lceropensci:2022:trab1 [2024/04/10 18:31] (atual) lcer
Linha 14: Linha 14:
 {{:opensci:2022:04-esalq-vertical-digital.png?nolink&50|}}{{:opensci:2022:1_lad06lrjlu9uzgsthuoyfa.png?nolink&50|}}{{:opensci:2022:1200px-jupyter_logo.svg.png?nolink&50|}}{{:opensci:2022:github.png?nolink&50|}}{{:opensci:2022:python.png?nolink&50|}}{{:opensci:2022:rlogo.png?nolink&50|}}{{:opensci:2022:tidy.png?nolink&50|}}{{:opensci:2022:rmarkdown.png?nolink&50|}}{{:opensci:2022:python.png?nolink&50|}}{{:opensci:2022:dokuwiki_logo.svg.png?nolink&50|}} {{:opensci:2022:04-esalq-vertical-digital.png?nolink&50|}}{{:opensci:2022:1_lad06lrjlu9uzgsthuoyfa.png?nolink&50|}}{{:opensci:2022:1200px-jupyter_logo.svg.png?nolink&50|}}{{:opensci:2022:github.png?nolink&50|}}{{:opensci:2022:python.png?nolink&50|}}{{:opensci:2022:rlogo.png?nolink&50|}}{{:opensci:2022:tidy.png?nolink&50|}}{{:opensci:2022:rmarkdown.png?nolink&50|}}{{:opensci:2022:python.png?nolink&50|}}{{:opensci:2022:dokuwiki_logo.svg.png?nolink&50|}}
  
- +===== Open Forestry =====
-<html><br><hr><h1 style="text-align: center;">Open Forestry</h1></html>+
 <html><blockquote>Esta p&aacute;gina &eacute; baseada no Coment&aacute;rio Cient&iacute;fico: <a href="https://doi.org/10.1038/s41559-022-01738-7" target="_blank">Making forest data fair and open.</a> Revista Nature Ecology &amp; Evolution</blockquote></html> <html><blockquote>Esta p&aacute;gina &eacute; baseada no Coment&aacute;rio Cient&iacute;fico: <a href="https://doi.org/10.1038/s41559-022-01738-7" target="_blank">Making forest data fair and open.</a> Revista Nature Ecology &amp; Evolution</blockquote></html>
  
Linha 156: Linha 155:
   * Como a Universidade está se preparando para essa tendência?   * Como a Universidade está se preparando para essa tendência?
 {{youtube>csgeOf9Q8mI?}}  {{youtube>csgeOf9Q8mI?}} 
 +
 +====== Tidyverse======
 +==Por: Evandro Magalhães, Guilherme Landim e Jorge Monteiro==
 +
 +
 +''citação''
 +“Conjuntos de dados Tidy são todos iguais, mas todo conjunto de dados bagunçados são únicamente bagunçados.” –– Hadley Wickham
 +
 +{{ :opensci:2022:tidyverse-730x294.png?direct&600 |}}
 +
 +==== O que é a filosofia Tidy?====
 +
 +<html>
 +<p align="justify">
 +
 +Os princípios para a elaboração de dados limpos através de uma interface uniforme permite a dominação de um pacote que pode ser interligado à lógica
 +de outro. O tidyverse parte de uma base “crua” e a transformam até obter uma base de dados analítica, que, a menos de transformações simples, está preparada para
 +gerar tabelas e gráficos e alimentar modelos. O Tidyverse é um conjunto de pacotes para ciência de dados que possuem gramática, estrutura de dados e principalmente, 
 +uma filosofia em comum. A filosofia é de trabalhar sempre com dados tidy (arrumados) e ter todas as ferramentas para transformar os dados que tivermos em tidy.
 +
 +</p></html>
 +
 +O tidyverse segue os seguintes princípios para uma [[https://pt.wikipedia.org/wiki/Interface_de_programa%C3%A7%C3%A3o_de_aplica%C3%A7%C3%B5es|API]] organizada, segundo o [[https://cran.r-project.org/web/packages/tidyverse/vignettes/manifesto.html|Tidy Manifesto]]:
 +
 +===Reutilizar estruturas de dados existentes===
 +
 +<html>
 +<p align="justify">
 +
 +Quando possível, é melhor utilizar estruturas de dados comuns do que criar uma estrutura específica para o seu pacote.
 +Geralmente, é melhor reutilizar uma estrutura existente mesmo que ela não se encaixe perfeitamente.
 +
 +</p></html>
 +
 +===Organizar funções simples usando o pipe===
 +
 +<html>
 +<p align="justify">
 +O pipe, %>%, é uma ferramenta de composição comum que funciona em todos os pacotes. Faça com que suas funções sejam o mais simples possíveis. Com o pipe é possível programar de forma mais compacta, legível e correta. Uma função deve poder ser descrita com apenas uma sentença.
 +A sua função deve fazer uma transformação no estilo copy-on-modify ou ter um efeito colateral. Nunca os dois.
 +O nome das funções devem ser verbos. Exceto quando as funções do pacote usam sempre o mesmo verbo. Ex: adicionar ou modificar.
 +</p></html>
 +===Programação Funcional===
 +
 +<html>
 +<p align="justify">
 +O tidyverse trata de um conjunto de pacotes lógicos que combina a manipulação de vetores para a visualização de dados em mapas para gerar uma comunicação sobre
 +o fenômeno que o ocorre com a combinação dos fatores que aqueles dados possuem. 
 +Esta manipulação combinada é dado pela exploração algébrica dos conjuntos numéricos para a formação de equações que possam entender as variáveis ajustadas de acordo
 +com a lista de dados que foi obtida através da dinâmica do processamento do código.
 +A visualização combinada destes dados é ralizado por visulizações geométricas em diferentes escalas de acordo com a equação lógica atribuida, informando a posição dos vetores 
 +distribuidos de acordo com a matemática atribuída para o entendimento do fenômeno a ser explorado.
 +Cada pacote do tidyverse lida com um diferente tipo de lógica.
 +</p></html>
 +===Projetado para ser usado por seres humanos===
 +<html>
 +<p align="justify">
 +Desenvolva o seu pacote para ser usado por humanos. Foque em ter uma API clara para que você escreva o código de maneira intuitiva e rápida.
 +Eficiência dos algoritmos é uma preocupação secundária, pois gastamos mais tempo escrevendo o código do que executando.
 +</p></html>
 +
 +
 +
 +Em resumo, toda variável está em uma coluna, e toda coluna é uma variável!
 +
 +
 +==== Quais são as regras para ser Tidy?====
 +
 +O padrão a ser seguido para a criação de dados e tabelas Tidy são em essência simples:
 +  - Cada variável é uma coluna
 +  - Cada observação é uma linha
 +  - Cada tipo de unidade observacional é uma tabela
 +
 +
 +<html>
 +<p align="justify">
 +Neste contexto, dados que não obedeçam esse conjunto de regras são considerados bagunçados (messy data). 
 +</p></html>
 +
 +De acordo com [[http://vita.had.co.nz/papers/tidy-data.pdf|Hadley Wickham]], desenvolvedor de diversos pacotes encontrados dentro do tidyverse (ggplot2, plyr, dplyr, etc…), os dados que fogem do padrão tidy podem ser categorizados em 5 problemas de organização:
 +
 +
 +  - Os cabeçalhos são valores, não o nome das variáveis;
 +  - Multiplas variáveis estão armazenadas na mesma coluna;
 +  - Variáveis armazenadas tanto em linhas, como em colunas;
 +  - Diferentes tipos de unidades observacionais estão armazenadas na mesma tabela;
 +  - Uma única unidade observacional está armazenada em diferentes tabelas.
 +
 +
 +==== O que é tidyverse?====
 +<html>
 +<p align="justify">
 +O Tidyverse é uma coletânea de pacotes que podem facilmente ser instaladas pelo aglomerador de pacotes chamado ''tidyverse''. O que facilita, de forma conveniente o download e instalação dos pacotes com um simples comando no software R. 
 +</p></html>
 +
 +
 +==== Pacotes do Tidyverse====
 +<html>
 +<p align="justify">
 +No dia a dia cheio de análises de uma cientista de dados, provavelmente ela utilizará um dos pacotes do universo Tidy. Estes são:
 +</p></html>
 +
 +''ggplot2'' O [[https://ggplot2.tidyverse.org/|ggplot2]] é um sistema para criação gráfica. Muito simples e muito usado! Basta prover os dados, dizer como você deseja que suas variáveis estejam localizadas esteticamente, quais princípios gráficos você deseja utilizar e ele resolverá para você.
 +
 +''dplyr'' O [[https://dplyr.tidyverse.org/|dplyr]] é um conjunto gramático de transformação de dados que ajuda a resolver a maioria dos problemas que os cientistas tem com os seus dados. Por exemplo: sumarizar, filtrar dados, agrupar, desagrupar, inserir linhas, colunas, renomear e tantos outros. 
 +
 +''tidyr'' O [[https://tidyr.tidyverse.org/|tidyr]] proporciona um conjunto de funções que auxiliam a cientista de dados a transformar seu dataframe em tidy. Por exemplo: remodelar seuss dados (pivotar dados e reorganizar valores em novo layout), Dividir Células, Trabalhar com dados não disponíveis (os famosos NA's)...
 +
 +''readr'' O [[https://readr.tidyverse.org/|readr]] é um pacote que, de forma simples, lê dados tabulados(como csv, tsv, fwf). Este pacote é pensado para analisar diferentes dados encontrados na natureza e detectar quando estes dados são alterados de forma não esperada. 
 +
 +''purrr'' O [[https://purrr.tidyverse.org/|purrr]] ou, como a nossa tradução livre, ronronar (dormir igual um gatinho) é um pacote que melhora a programação funcional do R fornecendo uma completa caixa de ferramentas para trabalhar com funções e vetores. Este pacote permite que você substitua varias funções por loops com códigos fáceis de escrever. Ou seja, grandes feitos com poucos passos. 
 +
 +
 +''tibble'' Tabelas [[https://tibble.tidyverse.org/|tibble]] são formas de dataframe. Neste formato, você consegue enfrentar problemas que só apareceriam no futuro, o que torna o seu código mais limpo e eficiente.   
 +</p></html>
 +
 +''stringr'' A manipulação de //strings// com o pacote [[https://stringr.tidyverse.org/|stringr]] é dada com base na promoção de um conjunto de ferramentas para trabalhar com uma string (cadeida de caracteres). Por exemplo: Detectar Matches, dividir strings, administrar tamanhos de células, juntar, separar...
 +
 +''forcats'' O [[https://forcats.tidyverse.org/|forcats]] é um utilitário de ferramentas que resolvem os problemas comuns com fatores. Por exemplo: criar um fator com um fator, inspecionar fatores, combinar fatores, mudar a ordem de níveis(desde, colocar gráficos em ordem crescente ou decrescente à coloração gráfica)...
 +
opensci/2022/trab1.1712773542.txt.gz · Última modificação: 2024/04/10 18:25 por lcer