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

Day07 生信马拉松-数据整理中R

(x) # 引号内单个字母/数字/符号数量 length(x) #检测向量元素数 1.2 字符串拆分 str_split(x," ") #直接拆分后会变成list子集 class(str_split...输出逻辑向量 str_ends(x2,"e") #判断x2中e结尾字符串,输出逻辑向量 1.5 字符串替换 x2 str_replace(x2,"o","A") #每个元素里面只替换第一次出现目标字符...行名并不友好,通常要使样本名转化为data.frame中第一列,防止在后续代码运行过程中行名丢失 图片 图片 step2 把原来行名转变为第一列 图片 step3 宽变长 :test、gene、count...ID方法 ## (1)分步解法 a = colnames(y) b = x$file_name k = match(a,b);k # match(a,b)意思是a里每个元素b第几个位置上。...#是b下标,可以给b取子集,也可以给与b对应其他向量子集

20300

从零开始异世界生信学习 R语言部分 06 R应用专题

,生成与向量元素相等逻辑值向量,可以用来取子集 str_starts(x2,"T") ##检测是否以T开头 str_ends(x2,"e") ##检测是否以e结尾 图片 5. str_replace...5,6,0,3) s=0 for (i in x){ s=s+i print(c(i,s)) } 图片 x <- c(5,6,0,3) s = 0 for (i in 1:length(x)){ ##i 循环范围是向量元素下标...list,使用下标循环,可以将每次循环结果都保存到列表中 ## cbind 按列拼接 a = rnorm(10) b = 1:10 cbind(a,b) ##do.call() 函数是列表 list...数据框每一行求平均值 apply(test, 1, sum) ##test数据框每一行求和 图片 图片 ### 2.lapply(list, FUN, …) # 列表/向量每个元素向量...full_join(test1,test2,by="name") ##取全集 semi_join(test1,test2,by="name") ##半连接,左边表格取右边表格住存在子集 anti_join

2.5K30
您找到你想要的搜索结果了吗?
是的
没有找到

十二、R语言综合应用

需要对列表取子集后,才能进行下一步计算,取子集代码是第二句,返回结果是向量,结果如下: [1] "The" "birch" "canoe" "slid" "on" "the...1.4.字符检测 str_detect(x2,"h") ### 看x2这个长度为8向量每个元素是否含有h这个关键词,生成与x2长度相等且一一逻辑值向量 str_starts(x2,"...# 列表/向量每个元素向量)实施相同操作 test <- list(x = 36:33,y = 32:35,z = 30:27);test #返回值是列表,列表中每个元素向量)求均值(...,取右边表中存在子集 anti_join(test1,test2,by="name") ###反连接,左边表里右边表里没有的会被留下来。...#是b下标,可以给b取子集,也可以给与b对应其他向量子集

3.1K30

R语言 数据框、矩阵、列表创建、修改、导出

df1列名向量子集*输入df1$后按tab键可以输出待选列名mean(df1$score) #取出向量可以进行运算坐标取子集df1[2,2] #取出(行数,列数)单元格df1[2,] #取出第二行所有内容...意义同向量列名或行名取子集df1[,"gene"] #取出列名为"gene"单元格df1[,c('gene','change')] #取出列名为"gene"及"change"单元格逻辑值取子集df1...,取出行为TRUE且列数为1df1$gene[df1$score > 0] #先取出列名为gene向量,在给出一个一一逻辑值向量数据框修改修改数据相当于定位取出数据后赋值,赋值需对应元素向量...= ls())load(file = "soft.Rdata") #使Rdata中向量出现在环境内,本身有名称,无需赋值矩阵和列表矩阵矩阵内所有元素数据类型必须相同*警惕因数据类型不同导致矩阵强制转换引起报错...2倍标准差,并写出用户使用该函数代码 。

7.5K00

R语言函数

值,底数为2 exp(x)#计算向量x中每一个元素指数 round(3.1415,digits=2)#保留2位小数,3.14 signif(3.1415,digits=2)#保留2位有效数字,3.1...%in% x %in% y #x每个元素y中存在吗 y %in% x #y每个元素x中存在吗 #取交集intersect会去重复,而%in%不会 6.向量筛选(取子集)——[] x <- 8:12...#x[x<-2]改为x[x< -2],注意区分赋值号和小于-2 ####修改向量某个/某些元素:取子集+赋值 x #改一个元素 x[4] <- 40#将x中第4个值改为40 #改多个元素 x....lapply(list, FUN, …) —— 列表/向量每个元素向量)实施相同操作 test <- list(x = 36:33,y = 32:35,z = 30:27);test#返回值是列表...=3)#向量v第3个数值后面插入值4 v <- v[-c(1:3)]#删除前3个数 10.运算符号(向量元素个数不同时,循环补齐,长向量元素个数必须是短整数倍) x**y#幂运算 y%%x#求余

20120

2023.4生信马拉松day7-R语言综合应用

length()数向量里面有多少个元素; rm(list = ls()) if(!...相等逻辑值向量; -(3)可以用来做“根据逻辑值提取x子集”; str_detect(x2,"h") #判断x每个字符串含不含有某个字母或者多个字母组合; str_starts(x2,"T")...-(3)yes:逻辑值为TRUE时返回值 -(4)no:逻辑值为FALSE时返回值 -(5)支持单个逻辑值,也支持多个逻辑值组成向量 -(6)相当于向量每个元素逐个进行判断,然后判断结果...如何挑出30个数里最大五个 -(1)排序 -(2)取最后五个 图片 3.向量/列表隐式循环-lapply() 列表/向量每个元素实施相同操作 lapply(1:4,rnorm) #批量画图...4. full_join 保留所有的,缺失位置填充NA 5. semi_join 半连接,效果是取子集:以右边表格为参考左边取子集 6. anti_join 保留左边表格右边表格里没有的东西 test1

3.6K80

生信学习-Day6-学习R包

") library(dplyr) 测试数据框: test <- irisc(1:2,51:52,101:102), R语言中,这行代码是对数据集 iris 进行子集选择操作。...在这个特定例子中,向量 vars 包含了两个元素,它们都是字符串:"Petal.Length" 和 "Petal.Width"。这两个字符串通常对应于数据框中列名。...dplyrfilter()函数中使用时,它可以用于筛选数据框中匹配给定集合中任一值行。这行代码作用如下: filter(test, ...): test数据框中筛选行。...group_by(Species):这一步将数据按照Species列不同值进行分组,即将数据集分成多个子集,每个子集包含相同Species值数据。...2.inner_join(test1, test2, by = "x")內连inner_join,取交集 R中,inner_join(test1, test2, by = "x") 是一个使用 dplyr

14310

R语言笔记-6

]] #该函数会形成一个列表 #str_split()可分割具有多个字符串向量 strs = c("Joey doesn"t share foods !"...(str," ") 输出结果: 图片 数据框处理-dplyr library(dplyr) head(iris,5) #将内部数据iris所有列按Sepal.Length列数值从小到大排列 head...right_join(data1,data2,by="name") full_join(data1,data2,by="name") semi_join(data1,data2,by="name") anti_join...(data1,data2,by="name") 图片 隐式循环 apply()函数:数据框、矩阵隐式循环 图片 MARGIN参数,1表示针对列,2表示针对行 FUN参数,可使用任何函数,包括自定义函数...:列表隐式循环 图片 test = list(x = 36:33,y = 32:35,z = 30:27);test #计算列表每一个元素平均值 lapply(test,mean) #将上面结果通过矩阵方式展示

45120

day6-白雪

#含有多个函数使用代码以及方法R包安装和加载镜像设置# options函数就是设置R运行过程中一些选项设置> options("repos" = c(CRAN="https://mirrors.tuna.tsinghua.edu.cn...,例如下次进到rstudio的话,查看镜像,又不在了,怎么办呢说起来这个,就必须提到Rstudio最重要两个配置文件:刚开始运行Rstudio时候,程序会查看许多配置内容,其中一个就是.Renviron...,先读一下.Rprofile中代码用file.edit('~/.Rprofile') #编辑.Rprofile之后脚本编辑区输入设置镜像代码保存,重启Rstudio即可安装 (必须要联网)R包安装命令...) #dplyr下载是一个安装包,解压在输,要不报错示例数据直接使用内置数据集iris简化版:test anti_join(x = test2, y = test1, by = 'x') #显示2表中x与1表不同数据 x y1 a 12 c 33

87900

R语言小专题

"-")}2)‼️重点函数:ifelse()ifelse(x,yes,no)x:逻辑值或逻辑向量yes:逻辑值为true时返回值no:逻辑值是false时返回值 x = rnorm(3) x [1]...] 0 11[[4]][1] 3 14四、隐式循环1)apply(x,margin,function) 其中x代表数据框或矩阵,margin=1代表行;margin=2代表列;function表示行或列采取函数...4.9500000 3.3833333 1.4500000 0.2333333 2)列表中元素进行操作 lapply()test <- list(x = 36:33,y =...(由于lapply输出格式也是列表不便于观看,因此可以使用sapply函数)sapply(test,mean) #输出形式是矩阵 x y z 34.5 33.5 28.5 五、数据框链接...blood_type1 jimmy A2 nicker B3 Damon O6)anti_join( ) 反连接 (输出前一个数据中除外共同列名数据

83630

R语言︱数据集分组、筛选(plit – apply – combine模式、dplyr、data.table)

介绍一种按照日期范围——例如按照周、月、季度或者年——进行分组超简便处理方式:R语言cut()函数。...鉴于这个怪要求,先CLIENT分组再SELLERID分组就必须写成:orders[,c("SELLERID","CLIENT")]。如果按照正常思维习惯写代码,结果将是错误。...base包里和split功能接近函数有cut(属性数据分划),strsplit(字符串分划)以及subset(向量,矩阵或数据框按给定条件取子集)等。...")],function(x) sum(x)) 4、subset()函数 利用subset()函数进行访问和选取数据框数据更为灵活,subset函数将满足条件向量、矩阵和数据框按子集方式返回。...使用data.table时候,需要预先布置一下环境: data<-data.table(data) 如果不布置环境,很多内容用不了。

20.3K32

R语言第二章数据处理(9)数据合并

dplyr包中join函数进行数据框合并,它们数据框合并原理同样是数据框合并原理是这样:首先在A数据框某一指定列每一行内容B数据框表指定列进逐行匹配,直到A中所有行匹配完为止。...包join函数 dplyr包是plyr包升级,join函数dplyr包中是个系列函数。...join为系列函数,包括inner_join、left_join、semi_join和anti_join函数 dplyrjoin函数似乎没有plyr包join函数match参数,只能进行所谓...结果, 行:显示x中所有能在y匹配到行,并显示结果按匹配依据进行了排序; 列:显示x中所有列。...,data2, c('city' = 'city')) anti_join函数 结果, 行:显示x中所有未能在y中匹配到行, 并显示结果按匹配依据进行了排序; 列:显示x中所有列。

2.3K20

R语言-专题

x### 1.检测字符串长度str_length(x)length(x) #返回字符串个数2.str_splitsplit返回列表,但是列表不能进行计算,列表进行子集### 2.字符串拆分str_split...identical(x1,x2) #判断两个变量是否一致1.下标循环应用library(ggplot2)a = data.frame(a1 = rnorm(15), a2...10个数a= norm(100)tail(sort(a),10)2.列表隐式循环—lapply输入数据是列表,输出数据也是列表### 2.lapply(list, FUN, …) # 列表/向量每个元素...(向量)实施相同操作test <- list(x = 36:33,y = 32:35,z = 30:27);test#返回值是列表,列表中每个元素向量)求均值(试试方差var,分位数quantile...)lapply(test,mean)lapply(test,fivenum)3.列表隐式循环—sapply返回值为矩阵或向量### 3.sapply 简化结果,返回矩阵或向量sapply(test,mean

1.6K00

Day6 呦呦鹿鸣—学习R包

filter(test, Species == "setosa")starwars %>% filter(species == "Human")4.arrange(),按某1列或某几列整个表格进行排序...), sd(Sepal.Length))R中管道操作符2:count统计某列unique值count(test,Species)分类变量每个变量值频数dplyr处理关系数据将2个表进行连接1.內连...inner_join,取交集inner_join(test1, test2, by = "x")满足两个条件:有相同变量名,相同变量名列里有相同元素;2.左连left_join列表书写顺序决定了最终合成列表中列顺序...,每列数值类型必须相同;以"by"列为标准,补齐列表,空值为"NA"4.半连接:返回能够与y表匹配x表所有记录semi_join交集表中test1部分列semi_join(x = test1,...y = test2, by = 'x')5.反连接:返回无法与y表匹配x表所记录anti_jointest1中去除交叉部分列表anti_join(x = test2, y = test1, by

13610

R语言数据集合并、数据增减、不等长合并

数据选取与简单操作: which 返回一个向量中指定元素索引 which.max 返回最大元素索引 which.min 返回最小元素索引 sample 随机向量中抽取元素 subset 根据条件选取元素...rbind()按照横向方向,或者说按行方式将矩阵连接到一起 rbind/cbind对数据合并要求比较严格:合并变量名必须一致;数据等长;指标顺序必须一致。...相比来说,其他一些方法要好一些,有dplyr,sqldf中union 5、sqldf包 利用SQL语句来写,进行数据合并,适合数据库熟悉的人,可参考: R语言︱ 数据库SQL-R连接与SQL语句执行...rowSums函数行求和,使用colSums函数列求和。...函数(合并数据,必须是data.frame),do.call可以用来批量执行。

12.8K12

学习R包

="https://mirrors.ustc.edu.cn/bioc/") install.packages("dplyr")library(dplyr)dplyr五个基础函数1.mutate(),新增列...4.5 1.5## 101 6.0 2.5## 102 5.1 1.93.filter()筛选行==和%in%区别给定两个向量...x和y,代码x == y将把x第一个元素与y第一个元素进行比较,然后将x第二个元素与y第二个元素进行比较代码x%in%y中,将x第一个元素与y中所有元素进行比较,然后将x第二个元素与y中所有元素进行比较...1.4 versicolor## 4 6.4 3.2 4.5 1.5 versicolor4.arrange(),按某1列或某几列整个表格进行排序...z## 1 b A## 2 e B## 3 f C5.反连接:返回无法与y表匹配x表所记录anti_join根据x与y某个共同交集,仅显示x中与y无交集部分,不合并y项中除非交集外其他部分anti_join

13910
领券