转置 data.table

2024-01-12

数据计算结束后有效转换 data.table 的好方法是什么

nrow=500e3
ncol=2000
m <- matrix(rnorm(nrow*ncol),nrow=nrow)
colnames(m) <- c('foo',seq(ncol-1))
dt <- data.table(m)
df <- as.data.frame(m)
dt <- t(dt)  #take a long time and converts the data table to a matrix

计算时间

1. to transpose the matrix
system.time(mt <- t(m))
   user  system elapsed
 20.005   0.016  20.024

2. to transpose the dt
system.time(dt <- t(dt))
user  system elapsed
32.722  15.129  47.855

3. to transpose a df
system.time(df <- t(df))
user  system elapsed
32.414  15.357  47.775

这是一个相当古老的问题,从那时起data.table已添加/导出transpose用于转置列表。就性能而言,它表现出色t除了矩阵(我认为这是可以预料的)

system.time(t(m))
 #   user  system elapsed 
 # 23.990  23.416  85.722 
system.time(t(dt))
 #   user  system elapsed 
 # 31.223  53.197 195.221 
system.time(t(df))
 #   user  system elapsed 
 # 30.609  45.404 148.323 
system.time(setDT(transpose(dt)))
 #   user  system elapsed 
 # 42.135  38.478 116.599
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

转置 data.table 的相关文章

  • 如何获得 STAN 中最大似然估计的标准误差?

    我在 Stan 中使用最大似然优化 但不幸的是optimizing 函数不报告标准错误 gt MLb4c lt optimizing get stanmodel fitb4c data win data init inits STAN OP
  • 使用 R Shiny 从 XLConnect 下载 Excel 文件

    有没有人尝试过使用 R Shiny 中的下载处理程序通过 XLConnect 下载新创建的 Excel 文件 在 ui R 中有一行不起眼的行 downloadButton downloadData Download 在 server R
  • decompose() 的周期太少[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 错误看起来像这样 decompose
  • R::bigmemory - 如何创建角色big.matrix?

    我尝试使用bigmemory封装在R我一开始就陷入困境 我愿意 temp lt matrix paste a 1 10 5 2 并得到一个字符矩阵 没关系 但后来我尝试 x lt as big matrix temp type char 我
  • 将 Instagram/youtube 嵌入 Shiny R 应用程序

    我想通过点击图表来播放 Instagram 或 Youtube 视频 例如显示异常值等 到目前为止 明确告诉 Shiny 视频内容是有效的 require shiny require ggplot2 data df lt data fram
  • R 中具有稳健回归的异常值

    我正在使用lmrobR 中的函数使用robustbase用于稳健回归的库 我会把它用作 rob reg lt lmrob y 0 dat method MM control a1 当我想返回我使用的摘要时summary rob reg 稳健
  • 如何对同一列上的数据帧列表中的所有数据帧进行排序?

    我有一个数据框列表dataframes list 举个例子 我把dput dataframes list 在底部 我想对列列表中的所有数据框进行排序enrichment 我可以对一个数据框进行排序 first dataframe lt da
  • 将年月格式转换为 POSIXct [重复]

    这个问题在这里已经有答案了 我有一些年月形式的数据 我想将其格式化以用于绘图ggplot date lt c 2016 03 2016 04 2016 05 2016 06 2016 07 2016 08 2016 09 2016 10 2
  • kableExtra 中的 row_spec() 函数不会在 html 输出中创建水平线

    我想在 kableextra 表中的某一行下方添加一条水平线 row spec 函数的参数 hline after 应该在行下方添加水平线 row spec 文档 https www rdocumentation org packages
  • 删除ggplot2中的负图区域[重复]

    这个问题在这里已经有答案了 如何删除 ggplot2 中 x 轴和 y 轴下方的绘图区域 请参见下面的示例 我尝试了几个主题元素 panel border panel margin plot margin 但没有任何运气 p lt ggpl
  • 如何删除箱线图上的刻度线

    我试图从箱线图中删除 x 轴刻度线 但保留与刻度线关联的标签 这在基础 R 中可能吗 colors lt c lightskyblue3 gray78 gold1 wheat1 boxplot avgscore module data mi
  • 我无法下载 R 中的 reshape2 包 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我在尝试安装 R 包时收到此响应 gt installed packages reshape2 Package LibPath V
  • 选择 R 中的数据表中隐藏时(在绿色加号下方)列的显示顺序

    Context 使用 DataTables 库制作交互式表格时 当屏幕宽度对于列的数量和宽度来说太窄时 列将隐藏在绿色 号下 我有一个非常宽的表格 有 20 多列 其中一些内容非常冗长 因此某些列在所有屏幕宽度下总是隐藏的 每次隐藏新列时
  • 将绘图调用拆分为多个块

    我正在编写一个图的解释 其中我基本上将在第一个块中创建图 然后描述该输出 并在第二个块中添加一个轴 然而 似乎每个块都会强制一个新的绘图环境 因此当我们尝试使用以下命令运行块时会出现错误axis独自的 观察 output html docu
  • 绘制点之间的所有线

    我有以下 R 代码 x lt c 0 01848598 0 08052353 0 06741172 0 11652034 y lt c 0 4177541 0 4042247 0 3964025 0 4074685 d lt data fr
  • twitterR 和 ROAuth R 软件包安装

    我在安装 CRAN 上的 twitteR 和 RAOuth 软件包时遇到一些问题 我尝试了几种不同的方法 在 Windows 下使用源代码 在 Ubuntu 下使用 RStudio 我尝试了以下命令 sudo apt get install
  • Purrr::map_df() 删除 NULL 行

    使用时purrr map df 我偶尔会传递一个数据框列表 其中一些项目是NULL 当我做 map df 返回行数少于原始列表的数据框 我想发生的事情是这样的map df calls dplyr bind rows 它忽略了NULL价值观
  • 使用 R 选择第一个非 NA 值

    df lt data frame ID c 1 1 1 2 3 3 3 test c NA 5 5 6 4 NA 7 3 NA 10 9 我想创建一个名为 value 的变量 它是每个单独 ID 测试的第一个非 NA 值 对于只有NA的个体
  • 基于时间窗口的不规则时间序列的优化滚动函数

    有没有办法使用 rollapply 来自zoo包或类似的东西 优化功能 rollmean rollmedian等 使用基于时间的窗口计算滚动函数 而不是基于大量观察的函数 我想要的很简单 对于不规则时间序列中的每个元素 我想计算一个具有 N
  • 如何仅删除单括号并保留配对的括号

    你好 我亲爱的老师 R 用户朋友们 我最近开始认真学习正则表达式 最近我遇到了一种情况 我们只想保留配对括号 并省略未配对的 这是我的样本数据 structure list t1 c Book Pg 1 Website Online Jou

随机推荐

  • 在 Android Studio 3.4.1 中继续面临进程意外退出

    更新后Java面临一个问题进程意外退出在创建 Android 版本时 我正在使用Android Studio 3 3 0并将其也更新为3 4 1也可以查看任何更新 但没有任何变化 目前我正在使用 classpath com android
  • Coldfusion jQuery getJSON:获取 WDDX 而不是 JSON

    我正在使用 Brian Rinaldi 的 Coldfusion 函数将 dotnet Webservice 数据集转换为查询结构 然后 每个查询都会以 JSON 形式返回到客户端页面 以便在 jQuery 函数中使用 查询是有效的查询对象
  • 如何确定 DynamoDB 项目是否确实被删除?

    DynamoDB 提供了用于删除项目的 API 在返回的DeleteItemOutcome and DeleteItemResult没有字段或方法来确定是否找到该密钥以及该项目是否确实被删除 查明该项目是否确实存在并已删除的唯一方法是请求该
  • 我可以在 python 中调用 Lambda 表达式中的函数吗

    我有一个包含 if else 条件和 for 循环的函数 我想在 lambda 表达式中编写这个函数 我尝试了多种方法来创建这个 lambda 函数 但我还是做不到 这是我的功能和另一个规则 negation no not never sp
  • BroadcastReceiver 未接收广播

    我正在尝试使用以下扩展代码来广播 toast 消息Activity 但广播没有被其他人接收到Activity 则不显示 toast 有人可以解决我的错误吗 主要活动是发送广播 java import android app Activity
  • Vue:在组件中使用自定义库(pdf.js)

    如何在 Vue 组件中使用供应商库 特别是我想使用 PDF js 我只想为这个特定组件加载它 因为它们是相当大的文件 我正在构建一个需要加载 pdf 的编辑器 所以我将 pdf js 和 pdf worker js 放在 src asset
  • 使用 python 运行 crontab

    Python crontab 脚本似乎不起作用 当我手动运行它时 python home ec2 user code1 py 它工作正常 但当放入 crontab 的 cron txt 文件时 却不起作用 我的 crontab 文件是 ho
  • 控制声音的速度 xcode

    我想知道是否可以减慢 xcode 中的声音 我的意思是我将在 xcode 中的支持文件中添加一些 mp3 文件 并且我将创建能够加快或减慢速度的应用程序 例如使用滑块 有可能吗 如果是 有人可以帮我出点主意吗 谢谢 AVAudioPlaye
  • Firebase - 在互联网离线时上传图像

    Firebase 有很好的选择 即使您处于离线状态 也可以使用其数据库并将数据发送到数据库 然后当连接再次建立时 它会自动将数据发送到数据库 是否也可以使用 Firebase 存储来做到这一点 例如即使互联网关闭也发送图像 然后当互联网再次
  • 如何在我自己的函数中使用给定包的内部函数

    我想使用给定 R 包 例如 httr 的内部函数编写一个函数 而不必将这些方法引用为httr method of httr package in the body我的功能 我不想使用 我尝试改变我的函数的环境 例如 enviroment m
  • 如何下载 Android 版谷歌源代码

    如您所知 有数百个项目的清单https android googlesource com https android googlesource com 我想将它们全部下载到 Windows 机器中 根据谷歌的文件 To install in
  • 更新到 dotnet 6 后 dotnet run 不起作用

    我昨天从 Net 5 更新到 Net 6 现在我的项目无法启动dotnet run 然后我得到错误 Building warn Microsoft AspNetCore Server Kestrel Core KestrelServer 5
  • C++ fstream 从选定点擦除文件内容

    我需要删除文件内容从选定的点 C fstream 我应该使用哪个函数 我已经写了objects 我需要删除这些objects在文件的中间 C 没有在给定点截断文件的标准机制 您要么必须重新创建该文件 使用以下命令打开ios trunc并写入
  • 正则表达式至少匹配一个字符或一个空格

    我正在使用以下正则表达式来找出检测至少一个字符 b a zA Z0 9 1 现在我还需要探测空间 我怎样才能做到这一点 您可以使用以下方法检测正则表达式中的空格 s 该标记将捕获字符串中的任何空格 在您的正则表达式中 您可以包含此标记 s括
  • 会话/实体管理器已关闭

    我有这个 Hibernate dao 在我的本地机器上测试时它运行良好 但对于某些交易它会抛出IllegalStateException 我相信这是因为多个用户同时点击它 我可能是错的 更新支付道 Repository public cla
  • 修改PIN中的申请指令

    我正在使用英特尔 PIN 来修改我的应用程序中的指令 我使用此链接中的 Safecopy 示例作为参考 https software intel com sites landingpage pintool docs 81205 Pin ht
  • Prolog列表有未实例化的尾部,需要去掉它

    我正在开发 Prolog 程序 它产生正确的输出 一个列表 但该列表末尾有一个未实例化的变量 我做错了事 并且不知道如何摆脱它 这是代码 plaatsingen plaatsingen Prod Hoev Rest Order Plaats
  • 使用 awk sed 解析更新 puppet 文件

    我有一个包含多行代码的木偶文件 其中有一个部分如下所示 defaultrepo myrepo defaultbranch mybranch gitmod pullstuff othergitcode gitcommit gt b54123b
  • 为什么 C++20 中 unique_ptr 不是 equal_comparable_with nullptr_t ?

    使用 C 20concept我注意到std unique ptr似乎无法满足std equality comparable with
  • 转置 data.table

    数据计算结束后有效转换 data table 的好方法是什么 nrow 500e3 ncol 2000 m lt matrix rnorm nrow ncol nrow nrow colnames m lt c foo seq ncol 1