Cook R生物信息学与算法R语言与统计分析

TCGA培训QA小结

2018-08-18  本文已影响40人  王诗翔
  1. ()[]的区别

    在通常情况下,()的使用常常伴随函数的调用。比如均值mean(),求和sum()等。为什么需要()的存在?因为R需要判断输入的边界。在mean(1,2,3) + 2这个例子中,是求1,2,3的均值,然后用这个均值加上2。也就是说进行求均值操作的是1,2,3,后面的2并没有包括在内。[]这个符号培训时已经讲和见的蛮多,主要用来取子集,即提取原数据的部分值。对于一维向量,例如

    > a = 10:20
    > a
     [1] 10 11 12 13 14 15 16 17 18 19 20
    > a[1:3] # 提取第1到第3个元素
    [1] 10 11 12
    > a[c(1,3)] # 提取第1个和第3个元素
    [1] 10 12
    

    我们可以通过整数值索引提取a的部分元素。

  2. 几个学员在中文windows系统中画图时发现报错:cannot open compressed file的情况,可以看到文件路径中有中文显示????,下面给出一个一位学员提供的答案:

  1. apply()函数第2个参数12是什么意思

    function (X, MARGIN, FUN, ...) 
    

    可以看到第2个参数的名字叫MARGIN,函数的详情请在R控制台中输入?apply后弹出的窗口中仔细阅读。

    简单来说,MARGIN=1是让函数对输入的数据逐行计算,MARGIN=2是逐列计算。下面用一个例子演示:

    > a = matrix(1:9, nrow = 3)
    > a
         [,1] [,2] [,3]
    [1,]    1    4    7
    [2,]    2    5    8
    [3,]    3    6    9
    > apply(a, 1, sum) # 指定使用sum求和函数逐行计算
    [1] 12 15 18
    > apply(a, 2, sum) # 指定使用sum求和函数逐列计算
    [1]  6 15 24
    
  2. 运行画图函数不能看到图

    这种情况一般是没有正常关闭画图设备导致的。在R里面画图通常有两种方式,一是直接运行画图函数,R会生成一个临时的图像,我们可以根据需要调整大小然后手动保存。另一种是先打开画图设备,我们常见的.png,.jpeg,.pdf等格式图片都可以通过相应的R函数png(),jpeg()pdf()打开画图设备,然后直接在设备上绘图,绘图后需要关闭设备。如果没有正常关闭,就会遇到Rstudio看不到出图的情况。

    我们可以使用dev.off()函数进行关闭,一次不行可以多次。

  3. 芯片差异表达分析处理流程

    这里请点击阅读基因芯片基因差异表达分析流程示例与讨论,提供了一个简单的示例,相应的注释和一些有用的参考。

  4. <-=的区别

    <-是R里面特有的赋值操作符,它常等价于其他编程语言中使用的=号,通常两者在R里面通用。这也是为什么讲师代码里面有用<-=进行赋值的情况。<-使用的好处是它可以直观看到数据的流向,从右侧流向左侧,而=看不到这种,而且=常被误解为相等的意思。实际上==才是对相等的判断!因此新手常把===混淆使用导致报错。

上一篇 下一篇

猜你喜欢

热点阅读