2022-05-21

reshape2包中melt函数:变长数据

示例1:默认melt参数

自己做一个宽数据:


image.png

melt之后的长数据,就是竖着排


image.png

这是非常直观,也非常标准的例子。因为只有name这一列是字符型charactor,其他三列是数值型numeric。使用melt直接融合时,在默认参数下,将name列作为分类id variables,其他的三列,每一列的列名展开,再跟数值。

1/安装,加载reshape2包包

install.packages("reshape2")
library(reshape2)
?reshape2#不行看不了
help(package=reshape2)#查看说明得这样看,难道是因为这是包中的一个函数,应该是

2/导入xlsx,赋值为report,用melt融合,融合后赋值

readWorkbook("D:/R/RData/report.xlsx")
report <- readWorkbook("D:/R/RData/report.xlsx")
melt(report)#Using name as id variables
report_melt <- melt(report)

3/用View查看一下,也是OK的

View(report)
View(report_melt)

4/保存输出为csv,*****fileEncoding = "GBK"避免中文输出乱码,非常关键row.names = FALSE保存后不会多加一列行号码

write.csv(report_melt,file="D:/R/RData/report_melt3.csv",fileEncoding = "GBK")
write.csv(report_melt,file="D:/R/RData/report_melt4.csv",fileEncoding = "GBK",row.names = FALSE)

这篇帖子中有关于几种格式的介绍https://blog.csdn.net/qq_37859539/article/details/79857476

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容