r - 如果最后一行要删除一列,R 函数不会返回 data.table
问题描述
我加入了两个 data.tables,删除了连接列并返回了连接的数据表。当函数被调用时,它返回 null。如果我在返回之前打印数据表,它会返回。即使没有尝试其他操作,例如 str 或 setorder 。为什么会这样?
library(data.table)
dmap <- function(){
xx = unlist(strsplit('abcpqr', ''))
div = data.table(division=rep(c('abc', 'pqr'), each=3), state=xx)
stc = data.table(state=xx, stcd = 1:6)
div = div[stc, on='state']
div[, state := NULL]
# print(str(div))
# setorder(div, stcd)
# print(div)
return(div)
}
dmap()
在 MacOS 11.5.2 (20G95) R 版本 4.0.3 (2020-10-10) 上尝试过——“Bunny-Wunnies Freak Out”数据表 1.14.1
Red Hat Enterprise Linux release 8.3 (Ootpa) R version 4.0.5 (2021-03-31) -- "Shake and Throw" data.table 1.14.0 使用 8 个线程
解决方案
推荐阅读
- python - 创建一个替换文件中的模式的生成器
- php - gPRC 如何与 PHP 执行流程交互?
- laravel - 可以在一个可访问的主机名下加入 Docker 容器吗?
- python - 简单的方法(转换/映射?)创建表示相应字段是否为新/旧的列
- vue.js - 更新 v-calendar 后:错误消息:您可能需要适当的加载程序
- spring - 工厂设计模式和 Spring
- vnc - vnc 设置 - 没有为 vnc 错误配置密码
- r - geom_tile:如果满足特定条件,则显示图块颜色
- android - 使用 Kotlin 的 Android:新活动不显示任何内容,全是空白?
- python - 机器学习 sklearn 中的分类报告