R手册(Common)--data.table

2023-11-13

R语言data.table包是自带包data.frame的升级版,用于数据框格式数据的处理,最大的特点快。
包括两个方面,一方面是写的快,代码简洁,只要一行命令就可以完成诸多任务。
另一方面是处理快,内部处理的步骤进行了程序上的优化,使用多线程,甚至很多函数是使用C写的,大大加快数据运行速度。因此,在对大数据处理上,使用data.table无疑具有极高的效率。

结构

DT[ i,  j,  by  ,with=TRUE] + extra arguments
    |   |    --> grouped by what?
    |    ---> what to do?
     ----> on which rows?

with=FALSE时,j为列名字符向量或者数字向量

用法

DT[,c("a","b","c"),with=FALSE]
X[, sum(a), by=c:f][order(b)]
DT[, .(sa=sum(a)), by=.(x=x>0, y)]  # 列命名,表达式分组命名
X[Y, .(a, b), on="c"]               # 内连接Y$c==X$c,选择列'X$a'and‘X$b'
X[Y, .(a, i.a), on="c"]             # 内连接Y$c==X$c,选择列'X$a'and‘Y$a'

特殊符号

DT[, .N, by=x]     # 分组计数
DT[, .GRP, by=x]   # 组计数器(1 for the 1st group, 2 for the 2nd, etc)

更新data.table

# data.table更新符号 :=
`DT[i, LHS := RHS]`
`DT[i, c("LHS1", "LHS2") := list(RHS1, RHS2)] `# 批量新建列

# 示例
DT[b > 4, b := d * 2L]
DT[, c("price","off") := tstrsplit(Discount_rate, ":", fixed=TRUE,fill = NA)]

运算符

x %chin% table   # base:: %in%
vector %like% pattern
x %between% y

其他函数

函数 说明
fread(input, sep=“auto”,colClasses=NULL, nrows=-1L,select=NULL) 输入
fwrite(x, file = “”, append = FALSE) 输出
between(x, lower, upper, incbounds=TRUE) incbounds是否包含边界
duplicated(x,by) 返回重复的逻辑值
unique(x,by) 返回唯一值
melt(data,id,measure) id:要融合的变量矢量
measure:要测量的变量矢量
dcast(data,formula,
fun.aggregate,
fill = NULL,value.var)
rowvar1+rowvar2+…~colvar1+colvar2+…
聚合函数
填充,value变量
merge(x,y, by=c(“id”,…),all=FALSE) by,by.x,by.y:连接键
all,all.x,all.y:inner(outer)/left/right join
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

R手册(Common)--data.table 的相关文章

  • R手册(Tidy+Transform)--tidyr

    文章目录 Reshape Data Split or Unit Cells Handle Missing Values tidyr Easily tidy data with spread and gather functions Resh
  • R手册(Tidy+Transform)--缺失处理(naniar and simputation)

    文章目录 naniar 缺失数据摘要 阴影矩阵 可视化缺失值变量分布关系 simputation make imputation simpler for missing data 缺失值是指粗糙数据中由于缺少信息而造成的数据的聚类 分组 删
  • R手册(Parallel Computing)--foreach

    R手册 Parallel Computing foreach foreach foreach 后端支持 library doParallel 为foreah包提供一个并行的后端 n cores lt detectCores logical
  • R手册(Tidy+Transform)--forcats

    forcats 分类变量数据处理 forcats for factor 函数 说明 factor x levels labels ordered as factor x fct expand f 添加更多级别 fct explicit na
  • R手册(Machine Learning)--mlr (Part 2)

    文章目录 Configuration 配置 Parallelization 并行 Imputation 插补 Feature Extraction 特征提取 1 Feature filtering 特征筛选 2 Feature select
  • R手册(Common)--R语言入门

    说明 本节中大部分内容摘自书籍 R语言实战 第2版 文章目录 RStudio Take control of your R code 数据处理一般流程 R 数据结构 R 运算符 概率函数 控制语句与循环语句 自定义函数 调试 拟合线性模型f
  • R手册(Import)--rvest

    文章目录 解析html 提取组件 提取 修改和提交形式的函数 浏览网站 解析html 函数 说明 read html x encoding x为a url或 a local path html nodes x css xpath 通过使用
  • R手册(Common)--tidyverse+tibble

    tidyverse是一系列包的组合 构建了一套完整的数据分析生态链 提供了一套整洁的数据导入 分析和建模方法 刷新了R语言原有的数据科学体系 文章目录 tidyverse Usage core tidyverse packages Impo
  • R手册(Common)--面向对象(R6 and S4)

    R 主要面向统计计算 似乎很少会用到面向对象的编程方法 但在统计计算中 在下列情形中使用面向对象的编程方法可以编程更有效率 文章目录 面向对象R6类 面向对象S4类 自定义S4类 实例化函数 S4的泛型函数 面向对象R6类 R 的面向对象
  • R手册(Visualise)--geomnet(ggplot2 extensions)

    文章目录 geomnet 返回ggplot2扩展主目录 geomnet Geom 网格图 关系图 geom net aes from id to id fontsize data stat net position identity na
  • R手册(Visualise)--ggplot2

    文章目录 Overview Geoms 基本图形 单变量 双变量 三变量 文本 误差可视化 地图 Stats Scales 常用标尺格式 坐标轴标尺 Color and fill scales Shape and size scales C
  • R手册(Common)--R语言基础包

    文章目录 环境设置 输入输出 文件操作 进度条 数据创建 数据选取及数据信息 列联表 内置常量 数学 矩阵运算 模型 其他函数 R语言基础包 base stats 环境设置 系统函数 函数 说明 options 显示或设置当前选项 digi
  • R手册(NLP)--wordcloud2

    文章目录 wordlcoud2函数 letterCloud函数 shiny支持 wordcloud2 R interface to wordcloud for data visualization Wordcloud2主要包括两个函数 wo
  • R手册(Syntax)--magrittr

    magrittr pipe lhs gt rhs forward pipe lhs为rhs第一个参数时 x gt f y 等价于 f x y lhs在任意位置时 用点 代替 z gt f x y arg 等价于 f x y arg z rh
  • R手册(Time Series)--forecast and prophet

    文章目录 forecast for Time Series and Linear Models 时间序列分析 模型 预测 ggplot2扩展 模型评估 prophet 构建模型 模型预测 可视化 交叉验证 时间序列分析 Time Serie
  • R手册(NLP)--text2vec

    文章目录 分词器 I O 处理 迭代器 支持 create 函数 向量化 主题模型 text2vec 这个 R 包提供了高性能和简洁的 API 来进行文本分析 自然语言处理 分词器 word tokenizer strings 英语分词器
  • R手册(Common)--data.table

    R语言data table包是自带包data frame的升级版 用于数据框格式数据的处理 最大的特点快 包括两个方面 一方面是写的快 代码简洁 只要一行命令就可以完成诸多任务 另一方面是处理快 内部处理的步骤进行了程序上的优化 使用多线程
  • R手册(Communicate)--R Markdown

    文章目录 Overview Rmd Structure YAML Header Parameters Set render options with YAML 初始文档信息 Text Embed code with knitr syntax
  • R手册(Visualise)--gganimate(ggplot2 extensions)

    文章目录 gganimate Create easy animations with ggplot2 返回ggplot2扩展主目录 gganimate Create easy animations with ggplot2 GitHub链接
  • R手册(Visualise)--GGally(ggplot2 extensions)

    本站已停止更新 查看最新内容请移至本人博客 Wilen s Blog 文章目录 GGally ggmatrix ggplot2矩阵 ggpairs ggplot2广义配对图 ggscatmat 纯粹定量变量的传统散点图矩阵 返回ggplot

随机推荐

  • vi编辑器的使用(2)

    接上篇vi编辑器的使用 1 1 4 光标移动 vi编辑器中的很多命令都是基于光标当前位置的 因此 如何移动光标定位到所需要的位置是一项十分重要的工作 下面进行详细介绍 如无特别说明 下面所讲的命令都是在普通模式下执行 1 向前移动字符 将光
  • [4G/5G/6G专题基础-150]: 6G总体愿景与潜在关键技术白皮书解读-5-缩略语释义

    目录 前言 附录 AI 人工智能 AR 增强现实 Augmented Reality 简称AR DT 数字孪生 MR 混合现实技术 MTP 头动响应 DOICT 数字 运营 信息 通信 FDD 频分双工 FTN 超奈奎斯特准则 IHR 智能
  • 2022跨年-跨年倒计时(烟花)

    前言 2022 HAPPY NEW YEAR 马上都是新的一年了 岁末已至 是结束也是开始 不管这一年好和坏 都将结束 愿来年有趣有盼 无灾无难 你我都要平安才好 善良勇敢 跨年倒计时制作步骤 步骤一 首先在电脑桌面新建txt文本文档 如下
  • 【案例】某物流集团:用数据驱动企业数字化转型

    数据猿导读 数据驱动的数字化转型是一个体系化工作 需要从理论体系 平台工具 数据 组织 机制五个方面 着手 建一个企业级的数据资产平台 梳理清晰整个集团的数据资产 并借助数据和智能的算法 在数据资产中发现新的业务价值点 创新产品和服务 从而
  • 什么是用户体验五要素

    这里是修真院pm小课堂 每篇分享文从 背景介绍 知识剖析 常见问题 解决方案 编码实战 扩展思考 更多讨论 参考文献 八个方面深度解析pm知识 技能 本篇分享的是 什么是用户体验五要素 背景介绍 用户体验五要素是以用户为中心的产品设计 本次
  • Git提交代码到新建的工程

    Git 全局设置 git config global user name luge git config global user email epi 163 com 创建 git 仓库 mkdir flink cd flink git in
  • ModelAndView 传值到 jsp页面 $ 不能取值的原因

    web xml 约束头配置有误 原来不可以的
  • 打开新窗口不用window.open的替代方法

    实现脚本如下
  • ubutnu vins_fisheye编译错误 hidden symbol“ “ in“ “ is referenced by DSO

    usr bin ld home mwy vins fisheye devel lib vins vins node hidden symbol ZN5ceres12CostFunctionD2Ev in usr local lib libc
  • docker centos6 ssh 自启动

    docker centos6 自启动ssh服务 前期准备 下载centos6 6版本镜像 启动容器完善容器环境 修改登录密码 更换yum源地址 推荐使用阿里源http mirrors aliyun com repo Centos 6 rep
  • Linux 磁盘管理,分区,文件系统

    目录 磁盘基本概念 磁盘在Linux中的表示 分区的概念 分区是软件概念 MBR GPT 使用fdisk进行磁盘管理 文件系统 mke2fs mkfs mke2fs mkfs dumpe2fs 日志 e2label fsck file sy
  • 开源学习组织:Datawhale

    这篇文章其实最早成立Datawhale的时候写的 那时候我们还是在读的学生 以下文字一直没有更新 一是希望提醒我们不要忘记初心 二是希望让大家知道 当Datawhale陪伴了学习者成长 做成了一些事 它的起源只是因为播下了一颗理想的种子 申
  • Android12 ---- Material You 应用

    背景 Google android S 新特性 当你更换壁纸 整个手机主题的颜色会根据壁纸的配色方案而改变 也就说 每当你更新壁纸 你的手机界面也会焕然一新 当用户在 Android 12 设备上更改壁纸时 系统会分析图像以选择一种颜色 并
  • Xcode 4 常用快捷键(和 Xcode 3 有些不一样了)

    Xcode 4 常用快捷键 和 Xcode 3 有些不一样了 2011 06 16 Unmi 把 Xcode 由 3 2 5 升级到 Xcode 4 0 2 之后 满以为快捷键总该不会变化太大吧 没想又要经历一个快捷键的适应过程 发现有些在
  • 思维能力的学习

    前言 在工作中 随着工作时间的增长 我们与他人的差异不是知识本身的差异 主要是思维方面的差异 所以我们需要培养自己的思维能力 思维能力的学习 思维是一个具备内在框架和逻辑的系统工程 思维覆盖了学习 认知 问题解决和复盘以及知识库多维度的内容
  • 华为出品Python入门教程:从零基础入门到精通,这一篇就够了

    前言 本文罗列了了python零基础入门到精通的详细教程 内容均以知识目录的形式展开 01 python由来与发展介绍 02 项目开发流程 第一章 markdown编辑器 01 markdown基本语法 02 Typora简介与安装 03
  • 在QT中使用日志系统

    当写好的软件发布出去后 用户遇到死机或一些其他的bug 我们该怎么追踪这些问题呢 这时候日志系统很好的帮助了我们 最近也是参照网络大牛的博客代码实现了log 下面看看代码吧 void outputMessage QtMsgType type
  • 爬虫篇(2.2)使用scrapy-jsonrpc简单教程

    首先安装scrapy jsonrpc pip install scrapy jsonrpc 打开你的爬虫项目中setting py文件 加入如下代码进行配置 EXTENSIONS scrapy jsonrpc webservice WebS
  • 网络编程5之poll、epoll、超时检测

    1 poll机制 poll的实现和select非常相似 只是文件描述符fd集合的方式不同 poll使用struct pollfd结构而不是select的fd set结构 其他的都差不多 include
  • R手册(Common)--data.table

    R语言data table包是自带包data frame的升级版 用于数据框格式数据的处理 最大的特点快 包括两个方面 一方面是写的快 代码简洁 只要一行命令就可以完成诸多任务 另一方面是处理快 内部处理的步骤进行了程序上的优化 使用多线程