首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ggplot_build中的group列如何与原始因子级别相对应?

在ggplot_build中的group列与原始因子级别相对应的方法是通过使用ggplot2包中的函数levels()。ggplot_build函数是ggplot2包中的一个函数,用于构建绘图对象的数据结构。在ggplot_build的返回结果中,group列是一个整数向量,表示每个数据点所属的组别。要将group列与原始因子级别相对应,可以使用levels()函数获取原始因子的级别,并将group列中的整数值映射到对应的因子级别。

以下是一个示例代码:

代码语言:R
复制
library(ggplot2)

# 创建一个数据框
df <- data.frame(
  x = c(1, 2, 3, 4),
  y = c(2, 4, 6, 8),
  group = factor(c("A", "A", "B", "B"))
)

# 绘制散点图
p <- ggplot(df, aes(x, y, group = group)) +
  geom_point()

# 构建绘图对象的数据结构
plot_data <- ggplot_build(p)

# 获取原始因子的级别
factor_levels <- levels(df$group)

# 将group列中的整数值映射到对应的因子级别
group_levels <- factor_levels[plot_data$data[[1]]$group]

# 打印结果
print(group_levels)

这段代码中,首先创建了一个包含x、y和group列的数据框df。然后使用ggplot函数创建一个散点图,并将group列作为分组变量。接下来使用ggplot_build函数构建绘图对象的数据结构,并使用levels函数获取原始因子的级别。最后,通过将group列中的整数值映射到对应的因子级别,将group列与原始因子级别相对应。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

带统计学PCoA完美解决打样本量多组数据不好区分问题!!

今天给大家带来一个beta多样性分析统计学检验结合图像,整体效果就想下面这幅图一样。 ?...<- factor(plotdata$Group,levels = c("setosa","versicolor","virginica")) ⚠️正常微生物丰度数据应该是是样本、行是物种,分析需要数据是行是样本...,顺序上一步保持一致。...这里有一个细节,就是因为须图是添加了差异检验字母,就会导致须图和PCoA散点图坐标轴范围不一致,如果直接合并的话会导致图像扭曲,箱子无法准确对应PCoA中点分布。...所以一定要先画须图,然后在后面PCoA图绘制过程调用两个须图坐标轴范围,以达到4个图完美匹配。

1.4K20

R语言ggplot2做箱线图时候如何添加表示平均值线

(data=df, aes(x=group,y=weight))+ geom_boxplot(aes(fill=group)) p1 image.png 通过ggplot_build...()函数可以获取画箱线图用到数据 ggplot_build(p1)$data[[1]] image.png 我们利用原始数据计算一下平均值,然后将数据集平均值添加到这组数据 df %>%...group_by(group) %>% summarise(mean_value=mean(weight)) %>% rename("group_1"="group") %>% cbind...(ggplot_build(p1)$data[[1]]) -> df1 然后利用geom_segment()函数添加品均值线段 p1+ geom_segment(data=df1,...不知道有没有比较好办法 (猜测geom_boxplot函数里应该是有一个步骤计算中位数,试着看看源代码,看能不能把中位数代码改为平均值) 还有一个问题是如果是分组箱线图那么应该如何来实现呢?

6K50

跟着NatureGenetics学作图:R语言ggplot2做进化树图及添加不同形状背景色块

论文里还公布了所有图原始数据,我们可以试着用论文中原始数据来模仿出论文中图 今天推文我们来重复一下论文中Figure3b 第一个树状图 image.png ggtree所有树布局...把作图数据单独提取出来,然后用ggplot2操作 ggplot_build(p)$data[[1]] -> df1 ggplot_build(p)$data[[2]] -> df2 ggplot_build...ggforce包geom_mark_hull()函数,这里比较麻烦是还需要自己手动计算色块边界坐标,算这些坐标还挺费时间,还有一个问题是如何给色块添加渐变色 拼图 library(patchwork...image.png 对应着把这个减号改成下划线就好了,如果确实想在图上体现这个减号,可以出图后再编辑 然后读取 read.tree("data/20220725/tree01.nwk") 又遇到报错...str_count("\\(") readLines("data/20220725/Figure3b_1.txt") %>% str_count("\\)") 一个13 一个14 确实不匹配 暂时想不到如何用代码去找是哪个括号多了

1.2K20

Hive ClickHouse 行转列函数 collect_set() groupUniqArray() 入门

1001["商品A", "商品B"]1002["商品A", "商品C"]1003["商品A", "商品C"]假设我们有一个用户表,记录每个用户技能和对应级别。...collect_set() 函数缺点:不保留原始数据顺序:collect_set() 函数将数据转换为一个无重复元素数组,但不保留原始数据顺序。...如果原始数据存在不同类型元素,则无法正确转换。只能应用于单列数据:collect_set() 函数只能将一数据转换为一个数组,无法处理多数据转换需求。...数组类型限制: collect_set() 类似,groupUniqArray() 函数要求转换后数组元素必须是相同类型。...pivot() 函数:在 SQL ,pivot() 函数可以将一数据透视为多数据,类似于将行转列功能,但需要使用动态 SQL。

1K20

从计算、建模到回测:因子挖掘最佳实践

计算 Level 2多档快照数据,传统方式是将多档量价数据存储成为多个, 再将多档挂单或者报价用 matrix 转换权重做计算。...需要计算指标定义在 factors ,其中1个是输入表原始字段 TradeTime,另一个是需要计算因子函数表示。...前面三个例子展示了 DolphinDB 如何通过流计算引擎实现因子在生产环境增量计算。...6、因子回测和建模 很多时候,计算因子只是投研阶段第一部分,而最重要部分其实在于如何挑选最为有效因子。在本章节,将会讲述如何在 DolphinDB因子相关性分析,以及回归分析。...当用户碰到因子重算情况,便可以用dropPartition函数先删除这个因子对应分区数据,然后直接重算这个因子并保存到数据表

6.1K22

从零开始异世界生信学习 GEO数据库数据挖掘--GEO代码-芯片数据分析-1

和有负值、有异常值矩阵需要处理原始数据。...以及曾老师2000元钱!!! 3. 数据实验分组探针注释 3.1 设置数据实验分组 设置实验分组第一步,是根据表格数据寻找分组依据。简化关键词,简化为一个单词。...如果三种办法都不适用,可以继续往后写else if if(F){ # 1.Group----一般实验分组为一个单词 # 第一种方法,有现成可以用来分组 Group = pd$`disease...,"patient"),"RA", "control") } ## str_detect用来搜索关键词 ##第三种方法需要临床信息字符串中有分组信息文字 3.2 将分组数据转变成因子 变量可以分为名义型...# factor(Group)生成因子是默认按照首字母顺序排序 ##Group = factor(Group,levels = c("control","RA")) 按照代码顺序进行排序,control

92120

Learn R GEO

] 54675 22 > exp[1:4,1:4] #检查矩阵是否正常,如果是空就会报错,空和有负值、有异常值矩阵需要处理原始数据。...),pd(临床信息),exp(表达矩阵),gpl_number(芯片编号) 图片 Group(实验分组)和ids(探针注释) # 从临床样本获得实验分组(在表格慢慢找,代码如何实现看下) rm(list..."control", "RA") } # 需要把Group转换成因子,并设置参考水平,指定levels,对照组在前,处理组在后 ;因子正文levels不对应时会产生NA...Group = factor(Group,levels = c("control","RA")) Group #Group是一个有重复值向量 是分类型数据,适合用因子形式 #factor直接转换并自动生成...图片 仿制实例数据 —两个部分(前四是用于求PCA值-探针/基因;最后一为分组信息) 行—样本名称 需要对原始数据进行转换(如图a) 图片 图片 PCA代码 #仿制前四 dat=as.data.frame

1K01

R语言绘制圈图、环形热图可视化基因组实战:展示基因数据比较

在circos.heatmap(),一个用户定义函数应该被设置为callback参数。该用户定义函数应该有三个参数。 dend: 当前扇区树状图。 m: 当前扇区相对应子矩阵。...同时,原始矩阵也被重新排序。如果增加更多轨道,需要考虑所有这些影响,以确保热图轨道有正确对应关系。 热图布局完成后,轨道/扇区/单元额外信息可以通过特殊变量CELL_META来检索。...heatmap(mat1, split = split) clear() grid.draw(lgd) 一个复杂圆形热图例子 在本节,我将演示如何制作复杂圆形热图。...原始热图类似,通过对甲基化矩阵(mat_meth)行进行k-means聚类,将所有热图行分成5组。...mat:一个矩阵,其中各行对应不同甲基化区域(DMRs)。矩阵值是每个样本DMR平均甲基化水平。 expr:一个矩阵,其中对应DMR相关基因(即DMR最近基因)。

4.7K20

如何用Origin做多因子组箱线图

那么今天我们要学如何使用Origin做多因子箱线图。 软件 ? Origin 2019b 32Bit ? 数据 ?...这是我们今天数据,分别是左侧三个指标(Factor A、Factor B、Factor C),每个指标测量了三个组别(Group 1、 Group 2、 Group 3)。 ? 视频教程 ?...关于多因子箱线图数据输入,一般分为两种:索引数据和原始数据。 首先我们先按照索引数据进行作图。 1. 打开Origin,数据输入(跟上述数据格式一致) ? 2....选中数据,选择多因子箱线图(索引数据) ? 3. 选中数据(因为我们是选中数据,才点击图形模板,所以不需要动,如果改变了,可以重选一下),选择X列作为分类 ? 4....选择原始即可(右边有预览,你可以选择箱线图,也可以选择箱线图+散点图,或者不同箱体,可以直接选择) ? 5. 这里的话,最基本因子箱线图就做好了 ? 6.

11.9K40

群组变量选择、组惩罚group lasso套索模型预测新生儿出生体重风险因素数据和交叉验证、可视化

还提供了进行交叉验证以及拟合后可视化、总结和预测实用程序。 本文提供了一些数据集例子;涉及识别低出生体重有关风险因素。...因此,设计矩阵被 _分组_;这就是_组_设计目的。...分组信息编码如下: group 在这里,组是作为一个因子给出;唯一整数代码(本质上是无标签因子)和字符向量也是允许(然而,字符向量确实有一些限制,因为组顺序没有被指定)。...请注意,在λ=0.05时,医生就诊次数不包括在模型。 为了推断模型在各种 λ值下预测准确性,进行交叉验证。...cv(X, y, grp) 可以通过coef以下方式获得与最小化交叉验证误差 λ 值对应系数 : coef(cvfit) 预测值可以通过 获得 predict,它有许多选项: predict #

63320

详解HDFS3.x新特性-纠删码

因此,HDFS 3.x版本一个重大改进就是使用纠删码(EC)代替副本机制,纠删码技术提供了副本机制相同容错能力,而存储空间却少得多。在典型纠删码(EC)设置,存储开销不超过50%。...这时原始数据加上校验数据,一共五个数据:7、8、9、50、122,可以任意丢两个,然后通过算法进行恢复 矩阵乘法 GT是生成矩阵,RS(k,m)生成矩阵就是m行k矩阵 Data代表原始数据...,7,8,9代表原始数据块 Parity代表校验数据,50,122代表校验数据块 所以3个原始数据块,如果使用2个校验块,EC编码总共占用5个数据块磁盘空间,2副本机制占用6个数据块磁盘空间容错能力相当...这允许在块组而不是块级别进行管理 Client:客户端读取和写入路径得到了增强,可以并行处理block group多个内部块 DataNode:DataNode运行额外ErasureCodingWorker...在副本机制下,我们可以设置副本因子,指定副本数量,但是在EC策略下,指定副本因子是没有意义,因为它始终为1,无法通过相关命令进行更改。 搜索公众号“五分钟学大数据”,深入钻研大数据技术

1.5K00

详解Hadoop3.x新特性功能-HDFS纠删码

因此,HDFS 3.x版本一个重大改进就是使用纠删码(EC)代替副本机制,纠删码技术提供了副本机制相同容错能力,而存储空间却少得多。在典型纠删码(EC)设置,存储开销不超过50%。...这时原始数据加上校验数据,一共五个数据:7、8、9、50、122,可以任意丢两个,然后通过算法进行恢复 20120501_01.png 矩阵乘法 GT是生成矩阵,RS(k,m)生成矩阵就是m行k矩阵...Data代表原始数据,7,8,9代表原始数据块 Parity代表校验数据,50,122代表校验数据块 所以3个原始数据块,如果使用2个校验块,EC编码总共占用5个数据块磁盘空间,2副本机制占用6个数据块磁盘空间容错能力相当...这允许在块组而不是块级别进行管理 Client:客户端读取和写入路径得到了增强,可以并行处理block group多个内部块 DataNode:DataNode运行额外ErasureCodingWorker...在副本机制下,我们可以设置副本因子,指定副本数量,但是在EC策略下,指定副本因子是没有意义,因为它始终为1,无法通过相关命令进行更改。

1.2K30

HAWQ + MADlib 玩转数据挖掘之(四)——低秩矩阵分解实现推荐算法

如何得到潜在因子         下面问题来了,这个潜在因子(latent factor)是怎么得到呢?        ...因此,预测出用户对未评分项目的评分后,根据分值大小排序,把分值高项目推荐给用户。这是个非常稀疏矩阵,因为大部分用户只听过全部音乐很少一部分。如何利用这个矩阵去找潜在因子呢?...然而在业务系统,userid和musicid很可能不是按从0到N规则顺序生成,因此需要建立矩阵下标值业务表ID之间映射关系,这里使用HAWQBIGSERIAL自增数据类型对应推荐矩阵索引下标...,U(用户潜在因子)矩阵11行7,V(音乐潜在因子)矩阵16行7。...生成结果表是稠密形式11 x 16矩阵,这就是我们需要推荐矩阵。为了方便原始索引表关联,将结果表转为稀疏表示。

1.3K100

纯干货 | 深入剖析 HDFS 3.x 新特性-纠删码

因此,HDFS 3.x 版本一个重大改进就是使用纠删码(EC)代替副本机制,纠删码技术提供了副本机制相同容错能力,而存储空间却少得多。在典型纠删码(EC)设置,存储开销不超过50%。 3....矩阵乘法 GT 是生成矩阵,RS(k,m) 生成矩阵就是 m 行 k 矩阵; Data 代表原始数据,7,8,9代表原始数据块; Parity 代表校验数据,50,122代表校验数据块。...所以3个原始数据块,如果使用2个校验块,EC编码总共占用5个数据块磁盘空间,2副本机制占用6个数据块磁盘空间容错能力相当。 4....可以从其任何内部块ID推断出block groupID。这允许在块组而不是块级别进行管理。 Client:客户端读取和写入路径得到了增强,可以并行处理block group多个内部块。...在副本机制下,我们可以设置副本因子,指定副本数量,但是在EC策略下,指定副本因子是没有意义,因为它始终为1,无法通过相关命令进行更改。

1.4K20

GEO数据挖掘

3)让exp列名pd行名顺序完全一致 临床信息分组信息表达矩对应p = identical(rownames(pd),colnames(exp));pif(!...转换成因子,并设置参考水平,指定levels,对照组在前,处理组在后Group = factor(Group,levels = c("control","RA"))Group在第一个位置上为参考水平,...做差异分析时作为对照组3.3.2 探针注释获取3.3.2.1 探针注释定义及来源探针注释:探针基因对应关系 不是所有的GPL都能找到注释!...) #打出找注释代码ids <- AnnoProbe::idmap('GPL570') #此时已经找到了探针注释,后面的代码不需要再运行找探针注释四种方法:(原始、基础)Bioconductor...,deg,logFC_t,P.Value_t,gse_number,file = "step4output.Rdata")探针注释:多个探针对应一个基因随机去重保留行和/行平均值最大探针取多个探针平均值如何实现随机去重

9400

R语言使用特征工程泰坦尼克号数据分析应用案例

, test) 现在我们有了一个名为“combi”新数据框,其中包含原始两个数据集完全相同行,按照我们指定顺序堆叠:先训练,然后测试第二。...所有这些字符串拆分结果都被组合成一个向量作为sapply函数输出,然后我们将其存储到原始数据帧一个新,称为Title。 最后,我们可能希望从标题开头剥离这些空格。...我们刚刚做最好部分是如何在R处理因子。在幕后,因子基本上存储为整数,但是用它们文本名称掩盖以供我们查看。如果在单独测试和训练集上创建上述因子,则无法保证两组中都存在两个组。...因为我们在单个数据帧上构建了因子,然后在构建它们之后将它们拆分,R将为所有新数据帧提供所有因子级别,即使该因子不存在于一个数据帧也是如此。它仍然具有因子水平,但在集合没有实际观察。整洁把戏对吗?...我向您保证,手动更新因子水平是一件痛苦事。 因此,让我们将它们分开并对我们新花哨工程变量做一些预测: 这里我们介绍R另一种子集方法; 有很多取决于您希望如何切割数据。

6.6K30

生信技能树 Day8 9 GEO数据挖掘 基因芯片数据

关于表达矩阵里负值 (2)提取临床信息 pd <- pData(eSet) # 找分组信息 (3)让exp列名pd行名顺序完全一致 p = identical(rownames(pd),colnames...= rep(c("group1","group2","group3"),times = c(6,6,8)) #假如需要从多个分组里面取两个分组对应行 library(stringr) k = str_detect...;gpl_number save(pd,exp,gpl_number,file = "step1output.Rdata") # 保存变量,后续进行下一步 原始数据处理代码,按需学习 https://...如果三种办法都不适用,可以继续往后写else if if(F){ # 第一种方法,有现成可以用来分组 Group = pd$ #列名 }else if(F){ # 第二种方法,眼睛数,...,"Normal","Disease") } data.frame(pd$title,Group)# 检查分组对不对 转换为因子 # 需要把Group转换成因子,并设置参考水平,指定levels,对照组在前

15320
领券