-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME.Rmd
147 lines (88 loc) · 3.89 KB
/
README.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
---
output: github_document
---
# **SWAT: Tratamento e algumas aplicações da base de dados.**
**Luis Miguel da Costa**
*(Costa, L.M., 2021. SWAT: Tratamento e algumas aplicações da base de dados.)*
---
# **1) Introdução**
Este é um exemplo de como tratar e fazer algumas estatísticas basicas com os dados do *[swat](https://swat.tamu.edu/data/)*.
## **Sobre os dados**
Os dados do swat vêm com a coluna de datas com problemas, como pode se ver na figura, por isso nosso primeiro trabalho será arrumar este problema!
```{r echo=FALSE, fig.cap="",fig.align='center',out.width = "600px"}
knitr::include_graphics("figures/dates.jpg")
```
Para isso iremos utilizar a função `correction_fun` que está na pasta **R**.
```{r}
source("r/correction_fun.R")
```
# **2) Criando os arquivos corrigidos**
Primeiro iremos criar os arquivos corrigidos, eles serão salvos na pasta *data*.
```{r, echo=TRUE,results="hide", warning=FALSE,cache=FALSE,message=FALSE}
lista <- list.files("data-raw/", pattern = "weather")
correction(lista)
```
Agora que eles estão criados, iremos testar e ver como nossos dados estão.
```{r, echo=TRUE, warning=FALSE,cache=FALSE,message=FALSE}
file_name <- list.files("data/",pattern = ".csv")
tabela_exemplo <- readr::read_csv(paste0("data/",file_name[1]))
head(tabela_exemplo)
```
## **BASE GERAL**
Agora vamos criar uma base geral para todas as estações! Valor utilizar a funçao `geral_data` para criar essa base.
```{r,echo=TRUE, warning=FALSE,cache=FALSE,message=FALSE}
# chamando função
source("r/geral_data_fun.R")
# criando a base
db <- purrr::map_df(file_name,geral_data)
write.csv(db, "data-raw/database.csv")
```
# **3) Estatísticas Descritiva**
Nossas estatiticas se concentram nas descritivas, portanto as tabelas criadas a a partir desse *script* serão: Media (mean), Desvio padrão (sd), Minimo (min), Máximo (max), Mediana (med) e Moda (mod).
## **Estatísticas para a base geral de dados**
Iremos fazer as climaticas em dias julianos e em meses, com as `geral_fun`, os arquivos gerais estarão salvos em *data/geral*.
```{r,echo=TRUE, warning=FALSE,cache=FALSE,message=FALSE}
## utilizar as funções criadas
source("r/geral_julian_fun.R")
source("r/geral_month_fun.R")
## chamando os dados gerais
basegeral <- list.files("data-raw/", pattern = "database")
## criando as tabelas climaticas gerais
geral_julian(basegeral)
geral_month(basegeral)
```
## **Estatísticas para a cada estação**
Agora iremos fazer as climaticas em dias julianos e em meses para cada estação, com as `ind_fun`, o objeto com os arquivos já está criado (`file_name`).
Os arquivos mensais para estação indivudual serão salvos em *data/individual/month*, já os arquivos para a climática em dias julianos estarão salvos em *data/individual/julian*.
```{r,echo=TRUE, warning=FALSE,cache=FALSE,message=FALSE}
# chamando funções
source("r/ind_julian_fun.R")
source("r/ind_month_fun.R")
# criando as climaticas para cada estação
ind_julian(file_name)
ind_month(file_name)
```
## **Visualização**
```{r,echo=TRUE, warning=FALSE,cache=FALSE,message=FALSE}
julianbase <- readr::read_csv("data/geral/julianclimat.csv")
julianbase |>
ggplot2::ggplot(ggplot2::aes(x=JDAY, y=P_mean))+
ggplot2::geom_line()+
ggplot2::geom_point()+
ggplot2::xlab("Julian Days")+
ggplot2::ylab("Daily mean of Precipitation (mm)")+
ggplot2::theme_classic()
```
```{r,echo=TRUE, warning=FALSE,cache=FALSE,message=FALSE}
list_esta <- list.files("data/individual/julian/", pattern = "csv")
tab <- readr::read_csv(paste0("data/individual/julian/",list_esta[1]))
tab |>
ggplot2::ggplot(ggplot2::aes(x=JDAY, y=P_mean))+
ggplot2::geom_line()+
ggplot2::geom_point()+
ggplot2::xlab("Julian Days")+
ggplot2::ylab("Daily mean of Precipitation (mm)")+
ggplot2::theme_classic()
```
---
# **AGORA É SÓ CONTINUAR SEU PROJETO**