R语言R科研信息学

自动上色和横坐标排序是两个比较重要的画图技能。

2019-06-14  本文已影响15人  9d760c7ce737

在群里只要有人问,学习R语言该看什么书,必定有人回答“R语言实战”,我也买过。里面的两个知识点给我留下很大困惑,一个是数据处理的melt和cast,另一个是因子。

一开始就是不能理解,因子是干什么的,到了后面用的多了,发现因子最大的功能就是分类。

因子就是分类器

因为这个特性的存在,因子被广泛地用于不同类别的自动上色。

除此之外,因为还有一个重要的功能

因子可以调顺序

昨天晚上,一个学员问了我这个问题:
他在做meta分析时画图,发现这三个组没有按照时间大小排序,而是按照字母排序了,他说已经搞了2个小时,问我怎么办。我毫不留情的说了几句,这个明显是上课的内容,如果你的这三个月份是数据框的一列,你只要把他们因子化,再重新排序就可以了。


5分钟后,他搞定了。


本来我想重现一下这个过程,但是不方便用这个数据,然后我发现在这个帖子中曾经写过
乱花渐欲迷人眼,偷得浮生半日闲

当时就是用因子排序的方法,把数据从这个样子



变成了排序后的样子



代码就在那个帖子里,我又读了一遍发现确实写得走心,观点很正,下午路过师弟的工位,发现他正好在看这个帖子。

再后来,这个因子排序的方法就用到了limma差异分析那里
GEO芯片分析中的大坑,差异基因完全相反!

最后要讲一个因子的坑

因子转数值要小心!

举个例子
创建一个向量

a <- rep(18:21,3)

把它因子化

a <- factor(a)

这时候这个数据是这样的,他起到了分类的作用,告诉我们这群数只有4类


如果调整因子的顺序, 我们确认因子的顺序可以用过这个方法改变

aa <- factor(a,levels = c("21","18","20","19"),ordered = F)
image.png

下面是坑,如果我想把这个数据变成数值呢?用as.numeric()对吧,

这样转换回去傻眼了,连大小都改了,而且没有任何警告信息,假如我们在处理自己数据的时候,碰到这种情况,怎么办,记住这句话

因子转数值,需要先变成字符串,再转换

好了,总结一下,因子有两个使用场景和一个坑,分别是

明天,我要更新一期甲基化的差异分析。
接下来连续六个月的更新主要分为三个部分的内容(今天是第5天了):

第一部分,

要把线下课程没有讲到的知识慢慢更新出来,比如甲基化,多芯片联合分析,还有什么WGCNA,ceRNA,microRNA批量靶基因预测,突变,免疫浸润,微环境等等,因为相对于课上的内容,这些都是次要的,属于非必须技能,当你R语言基础扎实的时候,我通过文字一样可以把你教会,不需要浪费课堂上的时间。

第二部分,

是测序方面的技能,博后期间给自己设计了这些课题,会逼着我自己去进步,这也是这六个月比较重要的组成部分。像熊讲的,这个领域没有门栏,但有瓶颈,我不想拿自己的爱好跟别人的专业去比拼,因为我本身就要努力成为专业人士

第三部分,

是文献阅读,各种奇思妙想,没有记录就没有发生,当我回看乱花渐欲迷人眼,偷得浮生半日闲这个帖子的时候,我不敢相信,我还说过那些话,我挺感激这些记录的。当我回看高中时秒天秒地的你,是否还会这些数学题?这个帖子的时候,我发现在那连续一个多月中,我跟很多非专业内的朋友保持了很好的互动,这些都会增加幸福感。
当然,有时候想划水的时候,会写一些鸡汤文,我写的鸡汤文阅读量都还可以,说明大部分朋友都是营养不良。

好了,我是果子,明天见,期待我们一起发育,变粗变长。

上一篇 下一篇

猜你喜欢

热点阅读