摘要:用过无数R包,但是却从来没有自己写过。总觉的写R包是很困难的事情,但是其实写一个最简单的R包还是蛮容易的!今天便在Ubuntu环境下写一个R包~首先,写一个函数,存放到一个文件夹中或者直接存在R中均可OK,下一步就是在你的R中source该函数,并且使用函数setwd('My directory')package.skeleton(name="My package name", list= “My function”) #list必须是“字符串”这样R这个函数就会在你的目录中出现一个文件夹,里面有几个基本的R包的文件,按照规则填上自己的包的信息之后便可以在t
阅读全文
摘要:常常会写一些函数来分析Microarray。而每次使用函数所用的参数都不同,因此需要一些方法能够将每次这些不同的结果以及参数存储起来。首先使用一个R内置的时间函数Sys.time():Sys.time()[1] "2013-04-26 14:15:37 PDT"#这里更改设置,输出成自己喜欢的格式:format(Sys.time(), '_%Y_%b_%dth_%H_%M')[1] "_2013_Apr_26th_14_18"#因此,可以每次程序都能够新建一个以时间为名称的文件夹(避免重复问题) dir = '/media/Res
阅读全文
摘要:1. 怎样快速入门一个R包这两天查看了十几个R包,也算是对看R入门一个R包有一些经验了把~所有的R包都附带一个manual(有些R包还会有一个小manual,做简介用,那就更好了)。把manual下下来,看看它的最前面有没有一个对整个包general的介绍,如果有,那么一定要仔细阅读,这个非常重要!它会把整个包的大致情况介绍:要解决什么问题,用什么算法解决的......另外,它还会介绍最重要的函数(其实一个R包经常用到的函数不会一般超过五个!)了解这些信息,便很容易上手了~但是并不是所有的R包都会有这样一个对本包的概述,对于这样的情况,可以在R包的主页上面找一个‘citation'的东
阅读全文
摘要:1. getAnywhere: getAnywhere(函数名)可以返回这个函数的代码 在看一些函数的时候总是找不到它的源代码,直接在R console中敲函数 的名字,有些函数是可以直接显示所有代码,但是有些却不能。对于那些不能的,我们使用这个函数即可~
阅读全文
摘要:DNA microarray分析中,聚类分析(clustering analysis)是非常重要的一步。今天学习了Pan Ning Tan的introduction to data mining ,进行一下总结:1. 聚类分析的分类1) 按照是否有层次:层次聚类(hierarchical clustering)划分聚类(partitioninng clustering)2)按照是否依据模型:non-parameter clustering:没有默认的assumption整个数据集是由哪几种分布mix的model-based clustering: 基于模型的聚类认为不同的‘类’有不同的‘分布’
阅读全文
摘要:以前只是知道R 中的lm函数能够做线性拟合,恰如函数的名字:lm= linear model不过今天需要做非线性拟合的时候, 上网搜各种函数,包括nls、nlm等等,不过nlm的用法好像和一般的建模函数不太相同;nls函数的用法倒很像,可是却总是出error,不知道为什么。再次苦找,忽然发现其实lm函数便可以完成这个工作:lm函数进行非线性拟合的本质是在其中加入非线性的变量,对这些非线性的变量进行线性拟合,结果还是非线性的。library(car)plot(USPop)lmfit = lm(population ~ year, data = USPop) #线性拟合lines(USPop$ye
阅读全文
摘要:今天快速浏览了一遍Bioconductor Case Studies这本书的前半部分,大有相见恨晚之感。里面系统地阐释了很多microarray的东西,让我之前的一些疑问得到冰释。1. 对于单通道microarray来讲,一般的预处理往往由三个步骤组成: a) background correction: 把背景噪声去掉。 b) between array normalization: 每个芯片之间由于加样量、操作以及本身芯片制作时产生的差别,会有所不同,因此,将不同芯片之间进行标准化(normalization)后比较,才能更真实地反映出差别。 c) reporter summarizati
阅读全文
摘要:今天在做基因的聚类分析,碰到了意想不到的情况。library('gplots') mydist = function(x){ dist(x,method = 'euclidean') } myclust = function(y){ hclust(y,method='ward') } mycol = greenred(24) HM = heatmap.2(Exp_Data_Diff_Max_Probes, scale = 'row', distfun=mydist, hclustfun=myclust, ...
阅读全文
摘要:电脑是win7 & ubuntu 双系统。今天把windows的硬盘重新分了一下区,结果发现原本有win7硬盘的media文件夹里面什么都没有了,于是查找网上资料,得知需要重新挂载硬盘。sudo fdisk -l #查看分区信息sudo su #进入根用户(sudo是没有权利的)#make directory under 'media'mkdir /media/Researchmkdir /media/C_Diskmkdir /media/Non_Study#mount the disk to the media foldermount /dev/sda5 /media
阅读全文