--- title: "Lesson 6" format: html --- ```{r} https://rs1.drwater.net username: - ruser01 - ruser02 - ruser03 - ruser04 - ruser05 - ruser06 RWEP2025 ``` # 安装包 ```{r} install.packages("tidyverse") x <- c(1:10, NA) hist(x) mean(x, na.rm = TRUE) median(x, na.rm = TRUE) sd(x, na.rm = TRUE) for(i in 1:10){ print(i) } x + y + x * y myfunc <- function(x, y = 3) { x + y + x * y } myfunc(1, 2) myfunc(10) c(FALSE, 2, 1:3, 3) c(FALSE, 2, 1:3, 3) > 1 all(c(FALSE, 2, 1:3, 3) > 1) c(1L,2L,3L) any(c(FALSE, 2, 1:3, 3) > 1) x <- 10 sin(x) = ? paste("sin(x) = ", sin(x), sep = " ") paste0("sin(x) = ", sin(x)) substr("Monday", 1, 3) ``` # tidy ```{r} require(readxl) aqdf <-readxl::read_xlsx("../../data/airquality.xlsx", sheet = "metadf") # install.packages("skimr") aqdf |> skimr::skim() # base # tidyverse aqdf |> dplyr::group_by(Area) |> dplyr::summarize( n = n(), lon.mean = mean(lon, na.rm = TRUE), lon.sd = sd(lat, na.rm = TRUE) ) |> dplyr::filter(Area %in% c("北京市", "天津市", "上海市", "重庆市")) |> ggplot(aes(x = n, y = lon.mean)) + geom_point() + geom_line() + geom_errorbar( aes(ymin = lon.mean - lon.sd, ymax = lon.mean + lon.sd) ) readxl::read_xlsx("./airquality.xlsx") flights|> filter(dest=="IAH")|> group_by(year,month,day)|>summarize(n=n(), delay=mean(arr_delay,na.rm=TRUE))|>filter(n>10) ```