随笔分类 - R编程
摘要:需求背景 对 R 语言中,ggplot2 的 scale_fill_manual() 函数的 values 参数理解不到位,它这里需要的是一个命名向量,无法在c() 函数内部直接创建一个向量。 举例说明,以不同分类数据的条形图来作为图例。 比如我有14个不同物种,绘制其不同颜色的条形图,注意颜色不能
阅读全文
摘要:几年前做的机器学习与R语言相关笔记,迁移到公号记录之。 1-机器学习简介 2-懒惰学习K近邻(KNN) 3-概率学习朴素贝叶斯(NB) 4-决策树 5-规则学习算法 6-线性回归 7-回归树和模型树 8-神经网络 9-支持向量机 10-关联规则 11-Kmeans聚类 12-如何评估模型的性能? 1
阅读全文
摘要:Y叔团队参与开发的一个R包RIdeogram,可用来绘制基因组染色体的可视化图形,如基因密度、分子标记等。 直接上代码。 #install.packages("RIdeogram") library(RIdeogram) data(human_karyotype, package="RIdeogra
阅读全文
摘要:通用集成多组学数据集包 MOFA2 包含一系列用于训练和分析多组因子分析 (MOFA) 的工具。MOFA是一种概率因子模型,旨在从可以包含多个组学层和/或样本组的数据集中识别变异的主轴。有关样品的其他时间或空间信息可以使用MEFISTO框架进行合并,该框架是MOFA2的一部分。下游分析功能可用于检查
阅读全文
摘要:问题 群友发来一个问题,来自一篇文献中的图。 分析 这幅图很明显是一个对角矩阵的统计图形,用R中GGally包的ggpairs() 函数就可以快速绘制。 案例如下: library(GGally) head(tips) pm <- ggpairs(tips) pm 绘图 我将模拟一个数据绘制。 li
阅读全文
摘要:目录模型部署概述R语言模型云端/服务器部署httpuvjugopencpufieryplumberRserveRestRserve结语 模型部署概述 数据科学项目的生命周期通常以迭代方式执行以下主要阶段: 业务理解(Business understanding) 数据采集和理解(Data acqui
阅读全文
摘要:目标 输入矩阵 col.1 col.2 col.3 col.4 row.1 1 2 3 4 row.2 5 6 7 8 row.3 9 10 11 12 row.4 13 14 15 16 输出矩阵 col.1 col.2 col.3 col.4 row.1 1 2 3 4 row.2 0 6 7
阅读全文
摘要:需求 R默认带文本的编号不是按数字来排序的,这会对数据排序造成一定影响。如paste0("sample",1:10)在列中排序不是按1-100,而是按ASCII排序。 > sort(paste0("sample",1:10)) [1] "sample1" "sample10" "sample2" "
阅读全文
摘要:问题 Linux环境下,使用conda成功安装了R4。但提示‘utils’和‘stats’包未找到,如下: R version 4.1.3 (2022-03-10) -- "One Push-Up" Copyright (C) 2022 The R Foundation for Statistica
阅读全文
摘要:简介 R包SpATS (Spatial Analysis of field Trials with Splines) 通过使用P-splines方法,校正植物育种田间试验中的空间异质性,如不同田间地块的管理措施(施肥打药等)或其他各种不稳定的空间趋势带来的影响。 以使用二维(2-D)平滑表面模拟随机
阅读全文
摘要:用了这么久pheatmap包绘热图,自认为很娴熟了。但今天遇到了一件诡异的事,折腾了我一两个小时,记录备忘。 不加行注释时正常显示 pheatmap(pld, cluster_rows = F, cluster_cols = F, gaps_col = c(5,10,15,20), annotati
阅读全文
摘要:报错 R version 4.0.3 $R BiocManager::install("clusterProfiler") Error in get(name, envir = asNamespace(pkg), inherits = FALSE) : object 'get_fun_from_pk
阅读全文
摘要:主成分方差解释率计算 通常,求得了PCA降维后的特征值,我们就可以绘图,但各个维度的方差解释率没有得到,就无法获得PC坐标的百分比。 有些工具的结果是提供了维度标准差的,如ggbiplot绘图时,直接会给你算出各个坐标的方差解释率。但我觉得这类工具绘图远不如ggplot本身,此时,就需要自己计算。
阅读全文
摘要:需求 原始文件: data <- data.frame(A = c(rep(111, 3), rep(222, 3)), B = rep(1:2, 3), C = c(5:10)) data # A B C # 1 111 1 5 # 2 111 2 6 # 3 111 1 7 # 4 222 2
阅读全文
摘要:之前最多只做过两类单水平的分面,即两两组合的面板图。如果某类超过两个水平呢? 一类的分面:facet_wrap(~ align) 两类的分面(x轴和y轴):facet_grid(align ~ gender) 如果某类超过两水平,如何实现? 很简单:facet_wrap(~ align + gend
阅读全文
摘要:前言 通常我们用rbind和cbind合并相同行列的数据框。当两个数据框具有不同行列数目时,直接用会报错。 > df1 <- data.frame(a = c(1:5), c = c(6:10));df1 a c 1 1 6 2 2 7 3 3 8 4 4 9 5 5 10 > df2 <- dat
阅读全文
摘要:ggplot虽然好用,但base才是真正的瑞士军刀,什么都能用,各种自定义图形自由组合,出版级图片用base才是王道。但要达到随心所欲,需要熟练掌握。 legend是比较重要的低级函数,有很多细节处理,用的时候记不起来,实践的时候也要调来调去。这里转载一篇博文,比较详细,不要刻意去记,用的时候对照一
阅读全文
摘要:问题 这个问题应该很常见吧。R中输出数据框时,想要把行名和列名都输出。如果直接输出的话,输出的结果列名会往前移动一位,这显然不是我们想要的。 直接上例子: > a = matrix(1:9, nrow = 3, ncol = 3, dimnames = list(LETTERS[1:3], LETT
阅读全文
摘要:需求 一个数据框一列或多列中有重复行,如何将它的重复行转化为多列?即本来两列一对一的关系,如何转化为一对多的关系?普通的spread函数实现较为麻烦。 示例数据如下: Item Value Apricot 4 Apricot 2 Apricot 5 Banana 4 Carrot 7 Carrot
阅读全文
摘要:安装R包时这个错误是经常见到的。我认为有几个方法可解决,记录之。 1. 更新R(不推荐) 简单粗暴的方法就是更新R,但这波及的范围太大了,不到万不得已不建议。 2. 更改或指定镜像源 出现这个问题很有可能是你现在用的镜像中未纳入这个包,一是可以多换个源试试。如: install.packages('
阅读全文