tidyverse 包中的功能

课程: datacamp, Introduction to the Tidyverse
https://campus.datacamp.com/courses/introduction-to-the-tidyverse/grouping-and-summarizing?ex=6

dplyr

%>% 管道函数
filter(条件) 筛选cases

select(变量名) 筛选变量
括号内可以:

  • 罗列变量名;
  • 使用:冒号表示一段连续的变量名;
  • 使用减号排除一些变量;
  • 使用starts_with(“字符串”)、ends_with(“字符串”)、contains(“字符串”)等函数。

顺序问题:

ratings %>% 
  select(channel, everything(), -ends_with("day"))

everything() is a great little helper! If it had been placed at the end, it would have added back in all the columns that end with “day”. Placing it before deselecting columns.

arrange 根据一个变量正序或倒序排列整个dataset

  • arrange(变量) 正序
  • arrange(desc(变量)) 倒序

mutate(计算公式) 修改原变量或者计算新变量
summarize(计算公式) 统计分析
group_by(变量) 分类统计,可以是1个或多个变量

gapminder %>%
  group_by(year) %>%
  summarize(medianLifeExp = median(lifeExp),
            maxGdpPercap = max(gdpPercap))

distinct

# 查看 bakeoff 数据中 result 变量的值的种类
bakeoff %>% 
  distinct(result)

count

# 计算每个唯一值的个数
bakeoff %>% 
  count(result)
> bakeoff %>% 
    count(result == "SB")
# A tibble: 2 x 2
  `result == "SB"`     n
              
1 FALSE              488
2 TRUE                61
# 连续 count
bakeoff %>% 
  count(series, episode) %>%
  count(series)
bakers_by_series %>%
 count(baker, sort = TRUE)
# 统计完之后,按照 数量n 倒序排列

recode

recode 类似于 MS 里面的“查找-替换”功能
与 mutate 函数结合可以生成新变量或者在原变量的基础上进行替换

recode(.x, ..., .default = NULL, .missing = NULL)
desserts %>% 
  mutate(nut = recode(nut, "filbert" = "hazelnut"))

.x 想要处理的向量
... 替换规则, old values = new values
.default 类似于 spss 里面的 ELSE,可设也可不设。设置的话
.missing 类似于 spss 里面的 MISSING

不同数据类型的缺失值写法不同:

NA_character_ for missing value for a character variable,
NA_integer_ for missing integer data
NA value is of the logical type.

Remember that when recoding numeric variables, you need to put the old value in backticks, for example, 5 = 6. ONLY old value!
numeric 要在数字上加 `` backticks(反引号) 符号。例如:

`0` = NA_character_
# 把原来的numeric 类型的变量变为 character 类型。同时把 数字 0 变成 NA缺失。

ggplot2

ggplot(gapminder, aes(x = gdpPercap, y = lifeExp, color = continent, size = pop))+
  geom_point()+
  scale_x_log10()+
  facet_wrap(~ year) + 
  expand_limits(y = 0)
ggplot(数据集,变量到图形的映射) + 
 图层
  1. 数据集
  2. 映射
    Second parameter is the mapping of variables in your dataset to aesthetics in your graph. 数据集中变量到图形美观的映射。
    · x 轴
    · y 轴
    · color
    · size
  3. 图层
图形 函数 变量个数 应用场景 备注
scatter plot geom_point() 2个连续变量 呈现关系趋势
line plot geom_line() 2个变量,x-time, y-focus var 呈现随时间变化的趋势
bar plot geom_col() 2个变量,x-分类变量, y-连续变量 呈现两个变量的交叉分析结果 col is short for column。 bar plot 的纵轴一般是从 0 开始,不用设置 expand_limits(y = 0)
histogram geom_histogram() 1 个连续变量 单变量数据的分布 映射aes 里只有x。geom_histogram(bins = 5) bins设置组距。
box plot geom_boxplot() 可以2个变量,x-分类变量, y-连续变量 按照 x 的分类,比较 y 的分布(优于 histogram的地方)
  1. log scale
    · scale_x_log10()把 x 轴的尺度变为以 log10 为单位。

  2. 分面
    · facet_wrap(~ 分面的变量)

  3. 设定坐标轴的起始位置
    · expand_limits(y = 0)

  4. 给图形添加 标题
    · labs(title = "Comparing GDP per capita across continents")
    · ggtitle("Comparing GDP per capita across continents")

你可能感兴趣的:(tidyverse 包中的功能)