1.mean计算均值,使用方法是mean(x, trim=0,na.rm=FALSE)

其中x是对象,如有异常值,需要设置参数trim来调整纳入计算的样本数据来实现剔除异常值的效果。

2.weighted.mean()计算数据的加权平均值

weighted.mean(x,w,…, narm=FALSE)

其中x是数值向量,w是数据的权,不同 x的维数相同,该函数可以对矩阵和数组计算加权平均值,但对数据框不适用

3.数据标准化:preProcess()函数:数据标准化包(caret包)

函数基本形式如下:

preProcess(x, method=c("center","scale")……))

其中 center 表示预测变量值减去均值; scale 表示预测变量值除以标准差,故默认标准化方法就是 (x mu) /std 。如果使用 range 方
法,则数据标准为 [ 的范围,即 (x -min)/(max -min)

默认情况下,函数 scale() 对矩阵或数据框的指定列进行均值为 0 、标准差为 1 的标准化

4.抽样方法

a. Sample函数

基本形式为sample(x,size,replace=FALSE,prob=NULL),x是数值型向量,size是抽样个数,replace表示是否有放回

b. creatDataPartition函数

在caret包中,可以实现对变量的类别进行快速等比例抽样

表达式:creatDataPartition(y, times=1,p=0.5,list=TRUE,……)

其中y是一个向量,times表示需要进行抽样的次数,p表示需要从数据中抽取的样本比例,list表示结果是否是list形式,默认为TRUE.

c.creatFolds函数

caret包中的createFolds函数是恶意直接按照某个变量等比例将数据随机分成k份,其基本形式为:

createFolds(y,k=10,list=TRUE,returnTrain=FALSE)

y是需要依据分类的变量,k指定k重交叉验证的样本,默认为10重,每重样本量为总量的1/k;list是否以列表或矩阵的形式存储随机抽取的索引号,默认为TRUE,returnTrain是否返回抽样的真实值,默认返回样本的索引值

5.日期值

as.Date(x, format="",…),其中x是要转换的对象,为字符型数据

Sys.Date()可以返回当天的日期;

date()返回当前的日期和时间(返回的日期是字符串)

format(x, format="output_format")来输出指定格式的日期值

函数difftime()来计算时间间隔,并以星期,天、时、分、秒来表示

as.character()可将日期转换为字符型

6.哑变量

caret包中有个dummyVars函数,可做变量虚拟化处理

dummyVars(formula, data, sep=".",levelsOnly=FALSE,fullRank=FALSE,……)