R数据读取 清理R

tidyr总结篇

2019-07-06  本文已影响12人  医科研

tidyr总结篇

gather(data,key="",value="") ## key是变量,value是值
gather的意义是重新塑造数据的变量,原有数据的变量并不是真正的变量
这时候变量不是变量,变量还是变量。

举例说明: 神奇的gather

参数1:data 参数2:key变量名,参数3:value变量名 参数4:gather的变量指定
其中-表示除外某向量,全部gather

stocks <- tibble(
  time = as.Date('2009-01-01') + 0:9,
  X = rnorm(10, 0, 1),
  Y = rnorm(10, 0, 2),
  Z = rnorm(10, 0, 4)
)
stocks
## gather起stocks中的,X,Y,Z. 新命名一个key,命名一个value, 除去time不变化
gather(stocks, stock, price, -time)
stocks %>% gather(stock, price, -time)##保留time不变化

##
mini_iris <- iris[c(1, 51, 101), ]
mini_iris
gather(mini_iris,key = "flower_att",value = "value",Sepal.Length, Sepal.Width, Petal.Length, Petal.Width)

gather(mini_iris,key = "flower_att",value = "value",Sepal.Length:Petal.Width)
## -表示不gather的变量
gather(mini_iris,key = "flow_att",value = "value",-Species)

## 省略掉key, value
gather(mini_iris,flow_att,value,-Species)##得到的结果相同



在管道中演示一套

library(dplyr)
mini_iris <-
  iris %>%
  group_by(Species) %>%
  slice(1)
mini_iris %>% gather(key = flower_att, value = measurement, -Species)

by_cyl <- group_by(mtcars, cyl)
slice(by_cyl, 1:2)
上一篇下一篇

猜你喜欢

热点阅读