r语言按列合并两个向量_盘点R语言的那些分分合合

8f1ab4394950df29ae06ba94a4ece2ea.png2776ce9ad5320fef04a35675a10c46f0.png 今天是生信星球陪你的第449天8f1ab4394950df29ae06ba94a4ece2ea.png


   大神一句话,菜鸟跑半年。我不是大神,但我可以缩短你走弯路的半年~

   就像歌儿唱的那样,如果你不知道该往哪儿走,就留在这学点生信好不好~

   这里有豆豆和花花的学习历程,从新手到进阶,生信路上有你有我!

花花写于2019-09-16

最近写推文缺素材,打算写R语言的《盘点》系列,欢迎后台发消息告诉我想看盘点啥。

有很多R语言函数是向量化的,就是说可以直接对向量进行处理,而不需要你写循环!

1.字符串

字符串分割的函数,str_split()就好,默认返回列表,加上参数simplify=T,则返回矩阵。

跟字符串连接有关的有三个函数:

paste、stringr::str_c和paste0

他们一脉相承!str_c出自tidyverse套装中的stringr包,和paste基本无区别,这个包专门处理字符串用,命名都以str_开头,我是很喜欢的。

paste0就更简单了,也是从paste演变而来,只是paste默认分隔符为空格,paste0默认无分隔符,无需记忆,一试便知,我上课都有一句名言,你试试啊!

先准备包和示例数据
if(!
(1)字符串分割
" ")
(2)向量拆分

其实这是一个取子集问题!感受一下

1]
(3)两个向量连接

参数是分隔符sep,默认为空格,可以自定义。

1:
(4)字符串向量合为长字符串

就是一个向量的三个元素合并到一起!

x
#> [1] "The birch canoe slid on the smooth planks." 
#> [2] "Glue the sheet to the dark blue background."
#> [3] "It's easy to tell the depth of a well."
str_c(x,collapse = "//")
#> [1] "The birch canoe slid on the smooth planks.//Glue the sheet to the dark blue background.//It's easy to tell the depth of a well."
(5)两个向量首尾相连

这个其实不应该算是个问题!直接用c()就可以,只是很多人不知道!

c(y,x)
#> [1] "1"                                          
#> [2] "2"                                          
#> [3] "3"                                          
#> [4] "The birch canoe slid on the smooth planks." 
#> [5] "Glue the sheet to the dark blue background."
#> [6] "It's easy to tell the depth of a well."

2.数据框

准备包和数据
if(!
(1)分割和合并列的函数

unite seprate

先按照逗号把hb列分为两列。

"b"))

再合并回来

"b"),col = hb,sep = 
然后是cbind,rbind,merge

示例数据

'e',

合并一下~

#简单的按列拼一起,两数据框行数相同就可拼,rbind也是一样,两数据框列数相同可拼,否则报错

然后还想拆分回去?merge是回不去了,如果是cbind、rbind简单合并的话,可逆回去,那就是数据框取子集的问题!

1:ncol(test1)]

向大家隆重推荐隔壁生信技能树的一系列干货!

全球公益巡讲、招学徒

B站公益74小时生信工程师教学视频合辑


😻

初学生信,很荣幸带你迈出第一步。

我们是生信星球,一个不拽术语、通俗易懂的生信知识平台。由于是2018年新号,竟然没有留言功能。需要帮助或提出意见请后台留言、联系微信或发送邮件到jieandze1314@gmail.com,每一条都会看到的哦~

408c9b0566756d82b253a208ebd449e4.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值