学习和使用R已经有1年多的时间了,看了很多R教程视频,看了很多电子书,买了几本R相关的书,现觉得编程思维很重要,所以继续钻研R编程艺术,已读到第五章,希望读完整本书可以帮助自己R达到大成的状态。
R语言编程艺术:第五章
drop=F表示向量变成数据框的参数条件。
complete.cases()用法跟na.rm和na.omit有点相似,但可以精确删除某行或某列。
用法是:x【complete.cases(x(,5:6))】,x为数据集。
Logistic模型:glm函数,family=binomial可以带入数据就估计出βi值。
第六章:
split()函数:基本形式是split(x,f)。x为向量或数据框,f为因子或因子的列表。
example:split(1:length(txt),txt)
by函数:第一参数指定数据,第二个为分组因子,第三个是应用于每组的函数。与tapply非常相似。
table()函数非常简单,就是输出频数表。
addmargins()解决计算边际值。dimnames()获得维度的名称和水平值。
subtable()可以完成子表的提取:它有2个参数:
tbl:感兴趣的表,它用“table”类的对象;
subnames:是一个列表,用来设定想要提取的子表。该列表的每个组件都是以tbl的某个维度命名,组件的值是所需水平的名称向量。
tabdom()函数表示一个表中最显著的频数。简单调用:tabdom(tbl,k)函数给表中频数占前k位的单元格。
自定义:
tabdom<-function(tbl,k){
tbldf<-as.data.frame(tb1)#转换为数据框
降序
dom<-tbldf[freqord,][1:k,]#显示前k点的freqord列
return(dom)
}
aggregate()函数:第一个参数是数据框,第二个参数必须是列表,第三个参数是函数。
cut()函数:切割为数据区间,调用形式:y<-cut(x,b,labels=FALSE);y为区间范围值。