Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >基于R中子集均值的数据归一化

基于R中子集均值的数据归一化
EN

Stack Overflow用户
提问于 2016-08-09 23:33:00
回答 1查看 680关注 0票数 0

我有一个表,我试图根据一列中基于另一列中的变量的特定均值子集对其进行规范化。理想情况下,我的代码应该将特定应变变量(如2987)的coverage_depth列中的所有数据除以同一列的一个子集的平均值(仅针对chr列中的SAG1的覆盖深度,仅针对应变列中的2987 )

我已经找到了一种很长的方法来做这件事,但我真的希望有人能把它变成一个循环,这样我就不需要在计算完均值后手动输入它们。

我的表看起来像这样:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
B1  1073    320 2987
B1  1074    324 2987
B1  1075    330 2987
SAG1    955 31  2987
SAG1    956 30  2987
SAG1    957 29  2987
SAG1    958 29  2987
BTub    446 57  2987
BTub    452 59  2987
B1  1707    53  GRE_MIG
B1  1708    56  GRE_MIG
18S 1099    242 GRE_MIG
18S 1100    242 GRE_MIG
SAG1    888 7   GRE_MIG
SAG1    889 7   GRE_MIG
SAG1    890 7   GRE_MIG

首先,我在我的表中加载:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
reads<-read.table("3133_all.CNV.txt", sep = "\t", header = F)
colnames(reads)<-c("chr", "position", "coverage_depth", "strains"

然后,我调用plyr来计算所有chr和coverage_depth列的组合的平均值。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
library(plyr)
    coverage_summary<-ddply(reads, c("chr", "strains"), summarise, mean = mean(coverage_depth))
    write.csv(format(coverage_summary, scientific=FALSE), file = "CNV_mean_07.27.16.csv", row.names = F)

这给了我一个更长的版本:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
     chr    strains         mean
1    18S       2987 2.052802e+03
20   18S    GRE_MIG 2.674536e+01
126   B1    GRE_MIG 6.503342e+01
213 SAG1       2987 3.422057e+01
232 SAG1    GRE_MIG 5.863501e+00

我想出了如何对一个菌株的所有coverage_depth进行归一化,这是我在chr SAG1中从该菌株获得的平均值,我手动输入了如下内容:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
NormalizeSAG1<-function(coverage_depth, strains){ 
  if (strains %in% c("2987")) {
    coverage_depth<-coverage_depth/3.42
  } else if (strains %in% c("GRE_MIG")) {
    coverage_depth<-coverage_depth/5.86    
  } else { coverage.norm<-coverage_depth
  }}
reads$SAG1_normalized<-mapply(NormalizeSAG1, reads$coverage_depth, reads$strains)

问题是我有53个不同的菌株,我想根据它们在chr列中单个SAG1的平均值来归一化它们。似乎一个for循环可以做到这一点,但是我不知道如何在没有大量ifelse语句的情况下正确地将我的数据子集以进行规范化。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-09 23:46:47

尝试以下操作:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
reads <- merge(reads, coverage_summary)
reads <- mutate(reads, normalized = coverage_depth / mean)

基本上,这应该将您的摘要列连接回原始数据,之后,创建一个规范化列应该是微不足道的。这也避免了必须创建一个自定义函数来处理53个不同的可能值。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38862035

复制
相关文章
基于FPGA的均值滤波(三)
基于FPGA的均值滤波(三) 之二维求和模块 在实现了窗口内一维行方向上的求和操作,现在要得到整个窗口内的像素之和,还必须将每一行的计算结果再叠加起来。但是每一行的计算结果就不可以使用上面的增量更新的
瓜大三哥
2018/02/26
9510
基于FPGA的均值滤波(三)
基于FPGA的均值滤波(一)
均值滤波的数学表达式列出: 由上述公式列出求图像均值的步骤: (1)获取当前窗口所有像素。 (2)计算当前窗口所有像素之和。 (3)将(2)结果除以当前窗口数据总数。 (4)滑动窗口到下一个窗口,直到
瓜大三哥
2018/02/26
1.8K0
基于FPGA的均值滤波(一)
基于FPGA的均值滤波(四)
基于FPGA的均值滤波(四) 之除法电路模块 假定求和结果为sum,计算后的均值为Average,则有 可以通过上式的计算误差为: 以5x5的窗口为例,将除法电路加上后得到的求均值电路如下图所示: r
瓜大三哥
2018/02/26
8790
基于FPGA的均值滤波(四)
基础知识 | R语言数据管理之数据集取子集
在做任何数据分析的第一步,是根据个人需求创建数据集,存储数据的结构是多样的,包括向量,矩阵、数据框、因子以及列表等。其实,以上几个R语言的独特术语,在C++中也会经常用到,导致很多人都会误认为自己很熟悉了,然而在实际的应用中,却经常出现错误。最近在处理一波量大的数据,在运行程序的过程中,因为前期数据处理错误却出现各种bug,经过检查数据集发现是数据管理的问题,为了巩固R语言的基本数据管理,特地重新基础知识。
黑妹的小屋
2020/08/06
2.5K0
基于FPGA的均值滤波(二)
基于FPGA的均值滤波(二) 之一维求和模块 均值滤波按照整体设计可以分为以下几个子模块: (1)一维求和模块,这里记为sum_1D; (2)二维求和模块,这里记为sum_2D; (3)除法转换模块,此模块比较简单,一般情况下不进行模块封装。 (4)行缓存电路实现行列间像素对齐。 整个顶层模块调用sum_2D模块和除法转换电路求取平均值,记为mean_2D。 用FPGA来求和是最简单的事情,所要注意的是求和结果不要溢出。一般情况下,2个位宽为DW的数据想家,至少得用一个DW+1位宽的数据来存放。 假设窗口尺
瓜大三哥
2018/02/26
1.5K0
基于FPGA的均值滤波(二)
pandas获取数据子集
数据子集是原始数据集的部分观察或者变量或者部分观察与变量,这是一个数据选择过程(按着业务的目标选择所需的观察和变量)。
陆勤_数据人网
2019/06/15
1.6K0
K均值算法R语言代码
今天给大家简单的介绍经典的聚类学习算法,K均值算法。 K均值算法的R语言代码 # 加载R包 library(tidyverse) # data manipulation library(cluster) # clustering algorithms library(factoextra) # clustering algorithms & visualization # 数据准备 df <- USArrests # 数据缺失值处理 df <- na.omit(df) # 删除含有缺失值的样本
生信交流平台
2020/08/04
1.4K0
Day5:R语言课程(数据框、矩阵、列表取子集)
数据框(和矩阵)有2个维度(行和列),要想从中提取部分特定的数据,就需要指定“坐标”。和向量一样,使用方括号,但是需要两个索引。在方括号内,首先是行号,然后是列号(二者用逗号分隔)。以metadata数据框为例,如下所示是前六个样本:
科研菌
2020/12/18
17.8K0
Day5:R语言课程(数据框、矩阵、列表取子集)
子集和问题------基于dfs的回溯思想
子集和问题 Description 子集和问题的一个实例为〈S,t〉。其中,S={ x1 , x2 ,…,xn }是一个正整数的集合,c是一个正整数。子集和问题判定是否存在S的一个子集S1,使得: 。 试设计一个解子集和问题的回溯法。 对于给定的正整数的集合S={ x1 , x2 ,…,xn }和正整数c,计算S 的一个子集S1,使得: 。 Input 输入数据的第1 行有2 个正整数n 和c(n≤10000,c≤10000000),n 表示S 的大小,c是子集和的目标值。接下来的1 行中,有n个正整数,表示集合S中的元素。 Output 将子集和问题的解输出。当问题无解时,输出“No Solution!”。
来杯Sherry
2023/05/25
3260
R + python︱数据规范化、归一化、Z-Score
版权声明:博主原创文章,微信公众号:素质云笔记,转载请注明来源“素质云博客”,谢谢合作!! https://blog.csdn.net/sinat_26917383/article/details/51228217
悟乙己
2019/05/26
4.4K0
Caffe中均值文件的问题
本文主要介绍了在Caffe中进行均值文件转换的方法和具体实现。首先介绍了Caffe中对于均值文件的常用形式,然后详细阐述了将均值文件从binaryproto格式转换为npy格式的过程,最后通过实际测试证明了这种方法的有效性和正确性。
GavinZhou
2018/01/02
6580
matlab归一化方法,数据归一化的基本方法
简单公式表达:y = (x-min Value)/(max Value-min Value)
全栈程序员站长
2022/09/10
3K0
批量归一化和层归一化_数据归一化公式
本篇博文主要讲解2015年深度学习领域非常棒的一篇文献:《Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》,这个算法目前已经被大量的应用,最新的文献算法很多都会引用这个算法,进行网络训练,可见其强大之处非同一般啊,采用这个方法网络的训练速度快到惊人啊,感觉训练速度是以前的十倍以上,再也不用担心自己这破电脑每次运行一下,训练一下都要跑个两三天的时间。另外这篇文献跟空间变换网络《Spatial Transformer Networks》的思想神似啊,都是一个变换网络层。
全栈程序员站长
2022/11/07
1.2K0
批量归一化和层归一化_数据归一化公式
PyTorch 数据归一化与反归一化[通俗易懂]
将特征缩放至特定区间 将特征缩放到给定的最小值和最大值之间,或者也可以将每个特征的最大绝对值转换至单位大小。这种方法是对原始数据的线性变换,将数据归一到[0,1]中间。转换函数为:
全栈程序员站长
2022/09/07
4.1K0
[深度学习概念]·数据归一化问题
个人主页--> https://xiaosongshine.github.io/
小宋是呢
2019/06/27
6980
「R」UCSCXenaShiny:基于 R 的 Xena 数据库交互应用
项目地址:https://github.com/openbiox/UCSCXenaShiny[1]
王诗翔呀
2020/07/24
1.3K0
「R」UCSCXenaShiny:基于 R 的 Xena 数据库交互应用
基于玻璃基板的混合光子集成系统
前面笔记介绍过康宁在Glass Interposer方面的进展(OFC2022: 康宁的Glass Interposer封装方案),有两位读者在微信群里留言问到是否其他机构在开发类似的技术。小豆芽这里介绍下德国Fraunhofer IZM在玻璃基板的相关工作,供大家参考。
光学小豆芽
2022/06/14
1.9K0
基于玻璃基板的混合光子集成系统
求列表中列表的数据的总值和平均值
输出dateset是[[1,2,3],[85,9,7],[99,1,58]]这个样子
用户7209445
2020/04/16
3.4K0
r语言求平均值_r语言计算中位数
R中的统计分析通过使用许多内置函数来执行的,这些函数大部分是R基础包的一部分,并且它们将R向量与参数一起作为输入,并在执行计算后给出结果。
全栈程序员站长
2022/09/29
2.2K0
r语言求平均值_r语言计算中位数
数据归一化和两种常用的归一化方法
数据标准化(归一化)处理是数据挖掘的一项基础工作,不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据分析的结果,为了消除指标之间的量纲影响,需要进行数据标准化处理,以解决数据指标之间的可比性。原始数据经过数据标准化处理后,各指标处于同一数量级,适合进行综合对比评价。以下是两种常用的归一化方法:
全栈程序员站长
2022/09/10
2.7K0
数据归一化和两种常用的归一化方法

相似问题

基于均值的归一化数据

13

R中基于字符串的子集均值的求法

11

计算r中数据帧子集均值的循环

23

R中基于方程的数据子集

32

嵌套数据中子集的均值(R)

33
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文