用plyr和ggplot2进行数据处理和绘图:
(plyr包)
ddply输入一个data frame返回一个data frame
dlply输入一个data frame返回一个list
e.g: uniqMakes=dlply(gasCar4,~year,function(x) unique(x$make))
#dlply将数据框按照~year来划分;
e.g: byYear=ddply(gasCars,~year,summarise,avgMPG=mean(comb08),avgDispl=mean(displ))
#ddply将数据框按照~year来划分;
#画图前先检查数据型,若需要,则将其统一为数值型;
ggplot(data,aes(x-axis,y-axis)) +
geom_point() #(用点来绘制数据,geom_line() + geom_hline() + geom_bar() + 设置图形类型参数)
geom_smooth() #(在图中加上阴影区域,平滑,加上0.95置信区间) +
facet_wrap(~var,nrow=) #(按照var将坐标系进行分割,展现在不同行中,玉米中可用不同材料来分割) +
xlab(" ") + ylab(" ") + ggtitle(" ") +
lab(x=" ",y=" ",fill=" ") #(旁注的标题设置) +
theme() #(主题设置函数,axis.text 坐标轴刻度标签属性) +
e.g: ggplot(gasCars4,aes(factor(year),fill=factor(trany2)))+geom_bar(position="fill")+labs(x="Year",y="Proportionofcars",fill="Transmission")+theme(axis.text.x=ele
ment_text(angle=45))+geom_hline(yintercept = 0.5,linetype=2)
#生成非常漂亮简洁的典型生物数据图;
#导入reshape2包,执行melt函数拆分数据,分为:数组array型,列表数据,数据框类型;
#数据类型melt(data, id.vars, measure.vars, variable.name="variable", ..., na.rm=FALSE, value.name="value")
#id.vars被当作维度的列变量;measure.vars被当成观测值的列变量,列变量名称用variable.name和value.name来指定,variable列变量名,value值;
subset函数从dataframe中条件检索出数据或列: (1)单条件subset(data,con)显示行;
(2)指定列subset(data,con,select=);
(3)多条件subset(data,con&|,select=);
对于数据要有清晰的认识,要清楚每一步分析的目的,并预估可能的结果。