数据读取
基础函数:
read.csv()
:用于读取以逗号为分隔符的CSV文件。read.table()
:更通用的函数,可以读取以空格、制表符等为分隔符的文本文件。load()
:用于加载RData文件,这些文件通常是通过save()
函数保存的。readRDS()
:用于读取RDS格式的二进制数据文件。
高效读取包:
- readr包:提供了
read_csv()
、read_tsv()
等函数,这些函数通常比基础函数更快,且更易于处理大型数据集。 - data.table包:其
fread()
函数是读取CSV文件的高效工具,特别适用于大数据集。 - readxl包:专门用于读取Excel文件,提供了
read_excel()
函数。 - haven包:用于读取SPSS、SAS、STATA等其他统计软件的数据文件。
- readr包:提供了
数据清洗
处理缺失值:
is.na()
:用于检测缺失值。na.omit()
:删除包含缺失值的观测行。na.fill()
、na.approx()
等(来自zoo包):用于填充缺失值。- 在进行计算时,可以使用
na.rm = TRUE
参数来忽略缺失值。
处理重复值:
duplicated()
:用于查找重复值。unique()
:删除重复值,返回*值。
数据转换:
as.factor()
、as.numeric()
、as.character()
等:用于数据类型转换。scale()
:用于数据标准化,即将数据转换为均值为0、标准差为1的形式。normalize()
(来自某些特定包,如caret包):用于数据归一化,即将数据缩放到一个特定的范围(如0到1)。
数据筛选和筛选:
subset()
:根据条件筛选数据。- 使用dp*r包中的
filter()
、select()
等函数进行更复杂的数据筛选和列选择。
数据合并:
merge()
:用于合并两个数据集,通常基于一个或多个共同列。rbind()
、cbind()
:分别用于按行或按列合并数据集。
数据分组和汇总:
- 使用dp*r包中的
group_by()
、summarize()
等函数进行数据的分组和汇总操作。
- 使用dp*r包中的
其他清洗工具:
- tidyr包:提供了
separate()
、unite()
、gather()
、*()
等函数,用于数据整理和转换,如拆分列、合并列、行列转换等。 - stringr包:提供了丰富的字符串处理函数,如
str_replace()
、str_trim()
、str_to_lower()
等,用于字符串的匹配、替换、截取等操作。
- tidyr包:提供了