在数据分析中,数据的存储方式直接影响分析过程的效率和准确性。常见的数据存储形式有宽型数据(wide format)和长型数据(long format)。宽型数据适合人类查看和理解,而长型数据则更适合计算机处理和分析。为此,R语言提供了tidyr
包,用于在这两种数据格式之间进行转换。本指南将详细介绍tidyr
包中最常用的两个函数:gather()
和spread()
,并结合实际案例进行讲解。
一、什么是宽型数据和长型数据?
宽型数据(Wide Format Data)
宽格式数据集中,每一行代表一个独特的实体(如一个病人),每一列代表不同的变量或属性。所有的变量都以列的形式展开,数据在水平方向上延展。例如,一个包含病人血压、血糖和胆固醇水平的数据集可能如下所示:
病人ID | 血压 | 血糖 | 胆固醇 |
---|---|---|---|
001 | 120 | 90 | 200 |
002 | 130 | 85 | 180 |