搜索
人大经济论坛 附件下载

附件下载

所在主题:
文件名:  tidyr包的用法初探.pdf
资料下载链接地址: https://bbs.pinggu.org/a-2268088.html
附件大小:
296.32 KB   举报本内容
  1. ---
  2. title: "tidyr包的用法"
  3. author: "R语言小能手"
  4. date: "2017年6月8日"
  5. output:
  6. html_document:
  7. number_sections: yes
  8. toc: yes
  9. ---

  10. #准备数据框

  11. ```{r}
  12. person=c("Alex","Bob","Cathy")
  13. grade=c(2,3,4)
  14. score=c(78,89,80)
  15. Data=data.frame(person,grade,score)
  16. print(Data)
  17. ```

  18. #gather()将宽数据转为长数据

  19. ##对所有的列进行转换

  20. ```{r warning=FALSE,message=FALSE}
  21. library(tidyr)
  22. library(dplyr)
  23. LongData1=gather(Data,variable,value)
  24. print(LongData1)
  25. ```

  26. ##去掉部分列,剩余的列进行转换

  27. ```{r}
  28. LongData2=gather(Data,variable,value,-person)
  29. print(LongData2)
  30. ```

  31. ##选择部分列进行转换,剩余的列保持不变

  32. ```{r}
  33. age=c(20,21,22)
  34. NewData=data.frame(Data,age)
  35. LongData3=gather(NewData,variable,value,grade:age)
  36. print(LongData3)
  37. ```

  38. #spread()将长数据转为宽数据

  39. ```{r}
  40. WideData=spread(LongData3,variable,value)
  41. WideData
  42. ```

  43. #unite()将n个变量合成一个变量

  44. ```{r}
  45. UniteData=unite(WideData,information,person,age,grade,score,sep="-")
  46. print(UniteData)
  47. ```

  48. #separate()将变量按照标记拆分

  49. ```{r}
  50. SeparateData=separate(UniteData,information,c("person","age","grade","score"),sep="-")
  51. print(SeparateData)
  52. ```
复制代码



    熟悉论坛请点击新手指南
下载说明
1、论坛支持迅雷和网际快车等p2p多线程软件下载,请在上面选择下载通道单击右健下载即可。
2、论坛会定期自动批量更新下载地址,所以请不要浪费时间盗链论坛资源,盗链地址会很快失效。
3、本站为非盈利性质的学术交流网站,鼓励和保护原创作品,拒绝未经版权人许可的上传行为。本站如接到版权人发出的合格侵权通知,将积极的采取必要措施;同时,本站也将在技术手段和能力范围内,履行版权保护的注意义务。
(如有侵权,欢迎举报)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

GMT+8, 2026-1-6 12:02