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

R语言:data.table语句批量生成变量

:= 右边 关于 ':= lapply' 的用法,在这里小编不再赘述,如果大家对此不是很熟悉可以看这一期公众号:用data.table语句批量处理变量。...代码如下: lapply(.SD[, 2:23], str_match, "继发性醛固酮|醛固酮") := 左边 我们可以再回顾一下,上文链接中用data.table语句批量处理变量的推送中所提到的 ‘...str_c(colnames(clinic)[2:23], "_xtrct") 最后我们把 ':=' 左右两边的代码组合在一起,放入data.table语句的j中就是我们在一开始所讲述的代码。...大猫的R语言课堂 我是大猫,一个高中读文科但却在代码、数学的路上狂奔不止的Finance Ph. D Candidate。 我是村长,一个玩了9年指弹吉他,却被代码深深吸引的博士候选人。...大猫的微信号是: iRoss2007 村长的B站主页是:http://space.bilibili.com/40771572 大猫的R语言课堂关注R语言、数据挖掘以及经济金融学。

1.2K20

R︱高效数据操作——data.table包(实战心得、dplyr对比、key灵活用法、数据合并)

(参考来源:R高效数据处理包dplyr和data.table,你选哪个?) ?...在筛选列变量的数据,也可以与%in%集合运算联用(集合运算见博客:R语言︱集合运算)。...最常见的合并函数就是merge,还有sql的方式(常见的合并方式可见: R语言数据集合并、数据增减、不等长合并 )。...在data.table中有三类数据合并的方式: 1、直接用[] data_one[data_two,nomatch=NA,mult="all"] 以第一个数据为基准,依据key进行合并,只出现重复部分...参考文献: 些许案例,代码参考自以下博客,感谢你们的辛勤: 1、R语言data.table简介 2、超高性能数据处理包data.table 3、R语言data.table速查手册 4、R高效数据处理包

9.3K43
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    能不能让R按行处理数据?

    这些问题大多数涉及到用data.table包处理数据。data.table是目前R中人气最高的数据处理包。 2....如果要自己寻找Stackoverflow上与R或是data.table相关的问题,可以在搜索栏输入[R] [data.table] Your question。 提 出问题 好啦,开始上课!...现在我想做的是对于每一行,找出非NA的值,填充到“mean.scale”这个新的变量;如果有多个非NA,那么就计算其平均值。也就是说,我希望最终得到如下数据集: ?...eddi大神的意思是,原来inti_total_asset和issuing_scale是两个变量,现在要把他们stack起来,“堆成”一列,也就是这样: ?...事实上,大猫把整个过程分解成了好几步,如果对于data.table包比较熟悉,完全可以在一行之内搞定所有事情,根本不需要把进行数据集的拆分、合并: ▶ t.final <- t1[, ":="(mean.scale

    1.4K20

    人工智能大模型的好处之任意数据结构的转换

    从零开始学习R编程语言的时候确实是有一些重难点,比如任意数据结构的转换: 在R编程语言里面的有很多底层数据结构 在R语言中,基础数据结构主要包括以下几种: 向量(Vector): 向量是R中最基本的数据结构...因子(Factor): 因子用于存储分类变量,是用于统计分析的离散变量。 这些基础数据结构构成了R语言数据处理和分析的基石,使得R在统计分析和数据科学领域非常强大。...如下所示的沟通过程: 在R语言中,如果有一个列表(list),其中每个元素都是向量,并且你想要将这个列表转换成一个数据框(data frame),可以使用do.call函数结合rbindlist函数从data.table...方法1:使用 data.table 包的 rbindlist 函数 首先,确保安装并加载了data.table包: install.packages("data.table") # 如果尚未安装 library...如果你已经在使用data.table包进行数据处理,那么使用rbindlist可能是一个更直接的选择。如果你希望使用基础R的功能,那么Reduce和cbind是一个很好的选择。

    8910

    R语言学习笔记之——数据处理神器data.table

    data.table 1、I/O性能: data.table的被推崇的重要原因就是他的IO吞吐性能在R语言诸多包中首屈一指,这里以一个1.6G多的2015年纽约自行车出行数据集为例来检验其性能到底如何,...注意以上新建列时,如果只有一列,列名比较自由,写成字符串或者变量都可以,但是新建多列,必须严格按照左侧列名为字符串向量,右侧为列表的模式,当然你也可以使用第二种写法。...数据合并: data.table的数据合并方式非常简洁; DT data.table(x=rep(letters[1:5],each=3), y=runif(15)) DX data.table...左手用R右手Python系列——数据合并与追加 长宽转换: 长宽转换仍然支持plyr中的melt/dcast函数以及tidyr中的gather/spread函数。...本篇仅对data.table的基础常用函数做一个整理,如果想要学习期更为灵活高阶的用法,还请异步官方文档。 左手用R右手Python系列——数据塑型与长宽转换

    3.6K80

    数据流编程教程:R语言与DataFrame

    DataFrame DataFrame 是一个表格或者类似二维数组的结构,它的各行表示一个实例,各列表示一个变量。 一. DataFrame数据流编程 二....此外,separate和union方法提供了数据分组拆分、合并的功能,应用在nominal数据的转化上。...rlist/purrr 1. dplyr dplyr包是现在数据流编程的核心,同时支持主流的管道操作 %>%,主要的数据处理方法包括: (1)高级查询操作: select(): 按列变量选择...DataFrame优化 1. data.table 众所周知,data.frame的几个缺点有: (1)大数据集打印缓慢 (2)内部搜索缓慢 (3)语法复杂 (4)缺乏内部的聚合操作 针对这几个问题,data.table...对比操作 对比data.table 和 dplyr 的操作: 3. apply函数族 4. join 操作 5. 拼接操作 更多操作详情可查看data.table速查表。 八.

    3.9K120

    笔记 GWAS 操作流程6-2:手动计算GWAS分析中的GLM和Logistic模型

    lm函数做回归分析 1,首先载入软件包data.table 2,然后读取0-1-2编码的c.raw文件 3,然后读取表型数据文件phe.txt 4,然后将表型数据和基因型数据合并 library(data.table.../phe.txt") dd = data.frame(phe$V3,geno[,7:17]) 合并后的数据类型如下: > summary(dd) phe.V3 M1_...glm函数做Logistic回归分析 1,首先载入软件包data.table 2,然后读取0-1-2编码的c.raw文件 3,然后读取表型数据文件phe.txt 4,然后将表型数据和基因型数据合并 library...(data.table) geno[1:10,1:10] phe = fread("pheno.txt") dd = data.frame(phe$V3,geno[,7:17]) 合并后的数据类型如下:...:2.0000 「用rs3131972_A这个位点做Logistic回归分析`」 「注意:R中glm模型,Logistic需要Y变量为0-1分布,而我们的表型数据为1-2,所以讲表型数据减去1」

    2.8K32

    一行代码对日期插值

    附:生成样例数据集的文件: # sample dataset # id变量用于分组 dt data.table(id = c(1, 1, 1, 2, 2), date = c(as.Date("2000...解决思路是运用data.table包的merge功能。首先我们建立一个CJ(cross join)数据集,这个数据集包含每个id所对应的“完整”日期。...在merge的过程中,我们指定id和date变量必须匹配,也即on = .(id, date)语句的作用: # 把CJ函数merge回原始数据集 dt[CJ, on = ....当然没问题,以上文提到的第二种情况为例,我们可以把两行合并为一行: # 把两行代码合并成一行 dt[dt[, ....处女座无数次为了给数据集取一个合适的名字心力交瘁…… 下 期预告 根据官网公告,Microsoft R Open 3.4版本将会“coming soon in May”,大猫会在第一时间给大家发布号外~

    1.4K30

    《高效R语言编程》6--高效数据木匠

    用法是:gather(data,key,value,-religion),分别是数据框,要转换成分类的列名,单元值的列名和清除收集的变量 使用seperate()分割联合变量 分割是指将一个实际由两个变量组成的变量分割成两个独立列...使用变量名非标准化求值更高效,见R语言 dplyr传递参数_自由 平等~忠诚 奉献-CSDN博客[2]。只是函数名多了个下划线那么简单吗?...与基本R中类似函数不同,变量无需使用 $ 操作符就可直接使用,设计与magrittr包的%>%管道操作符一起使用,以允许每个数据阶段写成新的一行。其是一个大型包,本身可以看成一门语言。...合并数据集 # 安装包 install.packages("ggmap","maps") library(ggmap) world <- map_data("world") names(world) #...# 使用data.table()处理数据 是dplyr的替代,两个哪个好存在争议,最好学一个一直坚持下去。如果两个都是新手,推荐dplyr。

    1.9K20

    用data.table语句批量处理变量

    写 在前面 本期“大猫R语言公众号”仍由“村长”供稿。村长继续为大家奉上data.table使用案例心得,希望大家能够继续支持村长!!...:`除权除息日\r\n[报告期] 2010一季`,这是一个非常脏的原始数据变量名,除了变量名是中文,需要用``符号进行引用以外,中间还有不知道什么时候会冒出来的空格、换行符等等,笔者也是试了好几次才真正将变量名输入正确...批 量处理法:用lapply批量处理变量 在此时lapply的妙用就显现出来了,在R中lapply用来对list中每一个element进行相同处理,如何把它运用到data.table,话不多说先上代码:...如何把处理好的这些变量与变量名进行对应,这里就用到了colnames()这个函数,提取出我们这个data.table第3到第34个变量的名字,这样就可以将变量名和更改格式后的变量按顺序进行一一匹配。...下 期预告 下期的大猫R语言课堂还是由村长来进行撰写和推送,届时将会给大家带来一个比较有趣的data.table发现,敬请期待!! ?

    1.2K30

    R语言处理一个巨大的数据集,而且超出了计算机的内存限制

    使用R编程处理一个超出计算机内存限制的巨大数据集时,可以采用以下策略(其他编程语言同理):使用数据压缩技术:将数据进行压缩,减小占用的内存空间。...可以使用R的数据压缩包(如bigmemory、ff、data.table)来存储和处理数据。逐块处理数据:将数据集拆分成较小的块进行处理,而不是一次性将整个数据集加载到内存中。...可以使用data.table包或readr包的分块读取数据的功能。使用索引:为了加快数据检索速度,可以在处理大型数据集时使用索引。...可以使用readr或data.table包的函数将数据集写入硬盘,并使用时逐块读取。数据预处理:在加载数据之前,对数据进行预处理,删除或合并冗余的列,减少数据集的大小。...使用其他编程语言:如果R无法处理巨大数据集,可以考虑使用其他编程语言(如Python、Scala)或将数据导入到数据库中来进行处理。

    1.1K91

    R数据框如何取交集

    前面给大家介绍过了 ☞R批量预测miRNA和靶基因之间的调控关系-ENCORI篇 ☞R批量预测miRNA和靶基因之间的调控关系-TargetScan篇 有小伙伴拿自己的数据试了一下,反馈预测结果太多了。...那么我们怎么利用R代码来对miRNA预测结果取交集呢? 我们知道一般在R里,对向量取交集,直接用intersect函数就可以了。...下面给大家介绍三种对R数据框取交集的方法 方法一、我们将各列的信息合并成一个字符串,然后取交集 #将各列的信息用_连接起来 combine1=apply(df1,1,function(x) paste...(x,collapse = "_")) combine2=apply(df2,1,function(x) paste(x,collapse = "_")) #查看合并后的字符串向量1和字符串向量2的交集...包里的fintersect函数 #加载data.table包 library(data.table) #将数据框转换成data.table格式,然后利用fintersect函数取交集 result3=fintersect

    1.7K20

    R语言 list与data.frame转换

    背景:下载某数据库的数据做数据分析,发现下载的数据结构是多层list嵌套,与平时遇到的数据表(data.frame)不同,并且第二层list的名称是本人需要的变量。...问题:如何将将第二层的list的名称嵌入到内层(第三层)的数据中,作为变量?...一、什么是list列表 列表是 R 语言的对象集合,可以用来保存不同类型的数据,可以是数字、字符串、向量、另一个列表等,当然还可以包含矩阵和函数,通常用list()函数创建列表。...::rbindlist() 第二层list的名称直接替代了内层数据框data.frame的行名rownames,并实现数据框的行合并。...缺点:如果内层数据框的行名是需要的变量,数据会被覆盖 > data.table::rbindlist(df_list$x) Sepal.Length Sepal.Width Petal.Length

    3.1K30

    R练习50题 - 第一期

    若干主要变量说明: symbol:股票代码。....(date, updown)这个结构,他的意思是,把整个数据集按照date和updown两个变量进行分组,并依次排序。...其中,updown是我们新建的字符变量,用来表示分组,它只取两个值:UP, DOWN。这其中的难点是建立updown这个变量。我们使用了ifelse这个函数。...如果你愿意,data.table允许你把所有的代码都写在同一行,就像这样: 下期预告 在下一期,我们会继续带来剩余题目的解答~ 大猫的R语言课堂 我是大猫,一个高中读文科但却在代码、数学的路上狂奔不止的...大猫的微信号是: iRoss2007 村长的B站主页是:http://space.bilibili.com/40771572 大猫的R语言课堂关注R语言、数据挖掘以及经济金融学。

    2.5K40

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

    数据框数据框的创建数据框来源主要包括用代码新建(data.frame),由已有数据转换或处理得到(取子集、运算、合并等操作),读取表格文件(read.csv,read.table等)及R语言内置数据函数...函数可以避免此前的错误adata.table = F)class(a)#但其不会有行名,且其会有一个data.table的数据结构多出来,可以设置data.table...","r2","r3","r4") #修改所有行名colnames(df1)[2] 合并...by="name") #取两者的交集right_join(test1,test2,by="name") #以右边的为准full_join(test1,test2,by="name") #两表所有的数据合并...rm(l) #删除列表lrm(df1,df2) #删除变量df1与df2rm(list = ls()) #清空所有变量附作业答案及解释# 练习3-1# 1.读取exercise.csv这个文件,赋值给

    7.9K00
    领券