136 lines
1.9 KiB
Plaintext
136 lines
1.9 KiB
Plaintext
---
|
|
title: "代码编写规则"
|
|
format:
|
|
dwsd-revealjs:
|
|
logo: _extensions/drwater/dwsd/inst/ucaslogo.png
|
|
---
|
|
|
|
|
|
## tidy data
|
|
|
|
```{r}
|
|
knitr::include_graphics("../../image/tidy-1.png", dpi = 270)
|
|
```
|
|
|
|
|
|
## pipe(管道) |>
|
|
|
|
```{r}
|
|
#| eval: false
|
|
require(patchwork)
|
|
plot(1:10)
|
|
1:10 |> plot()
|
|
plot(x = 1:10, y = sin(1:10))
|
|
1:10 |> plot(y = sin(1:10))
|
|
```
|
|
|
|
```{r}
|
|
#| echo: false
|
|
#| layout-nrow: 1
|
|
#| fig-width: 4
|
|
#| fig-height: 3
|
|
#| out-height: 90%
|
|
require(patchwork)
|
|
plot(1:10)
|
|
1:10 |> plot()
|
|
plot(x = 1:10, y = sin(1:10))
|
|
1:10 |> plot(y = sin(1:10))
|
|
```
|
|
|
|
|
|
|
|
## pipe(管道):%>%
|
|
|
|
```{r}
|
|
#| eval: false
|
|
#| layout-nrow: 1
|
|
#| fig-width: 3
|
|
#| fig-height: 4
|
|
#| out-height: 125%
|
|
require(magrittr)
|
|
1:10 %>% plot()
|
|
1:10 %>% plot(y = sin(1:10))
|
|
sin(1:10) %>% plot(1:10, .)
|
|
sin(1:10) |> plot(x = 1:10, y = _)
|
|
```
|
|
|
|
```{r}
|
|
#| echo: false
|
|
#| layout-nrow: 1
|
|
#| fig-width: 3
|
|
#| fig-height: 4
|
|
#| out-height: 125%
|
|
require(magrittr)
|
|
1:10 %>% plot()
|
|
1:10 %>% plot(y = sin(1:10))
|
|
sin(1:10) %>% plot(1:10, .)
|
|
sin(1:10) |> plot(x = 1:10, y = _)
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## 代码编写规则
|
|
|
|
```{r}
|
|
#| eval: false
|
|
|
|
# Strive for:
|
|
short_flights <- flights |> filter(air_time < 60)
|
|
# Avoid:
|
|
SHORTFLIGHTS <- flights |> filter(air_time < 60)
|
|
|
|
# Strive for
|
|
z <- (a + b)^2 / d
|
|
# Avoid
|
|
z <- (a + b)^2 / d
|
|
|
|
# Strive for
|
|
mean(x, na.rm = TRUE)
|
|
# Avoid
|
|
mean(x, na.rm = TRUE)
|
|
```
|
|
|
|
## 练习
|
|
|
|
```{r}
|
|
#| eval: false
|
|
flights |>
|
|
filter(dest == "IAH") |>
|
|
group_by(year, month, day) |>
|
|
summarize(n = n(), delay = mean(arr_delay, na.rm = TRUE)) |>
|
|
filter(n > 10)
|
|
```
|
|
|
|
## 练习
|
|
|
|
```{r}
|
|
#| eval: false
|
|
flights |>
|
|
filter(dest == "IAH") |>
|
|
group_by(year, month, day) |>
|
|
summarize(n = n(), delay = mean(arr_delay, na.rm = TRUE)) |>
|
|
filter(n > 10)
|
|
```
|
|
|
|
## quarto
|
|
|
|

|
|
|
|
|
|
## 欢迎讨论!{.center}
|
|
|
|
|
|
```{r}
|
|
#| results: 'asis'
|
|
rmdify::slideend(
|
|
wechat = FALSE,
|
|
type = "public",
|
|
tel = FALSE,
|
|
thislink = "../"
|
|
)
|
|
```
|
|
|