【问题标题】:Rstudio diagnostic and data.tableRstudio 诊断和数据表
【发布时间】:2022-01-03 00:25:12
【问题描述】:

有没有办法让 Rstudio 诊断知道 data.table 语法? 目前,将与 data.table 一起使用的代码被 Rstudio 诊断标记为有问题

library(data.table)
dt <- data.table(var1 = c(1,2), var2 = c(3,4))
dt[,var3:=var1+var2,]

add_f <- function(input_dt) input_dt[,var3:=var1+var2,]

add_f(dt)

编辑:添加了功能示例 edit2:为函数添加了带括号的示例

【问题讨论】:

  • 在我运行了前两行之后它没有显示这个。在定义data.table之前,它无法知道var1var2已经在data.table中定义了。
  • 这是真的。但是如果在函数中使用 data.table 语法,问题仍然存在。我相应地编辑了问题。
  • input_dt 不一定包含var1var2。该函数是通用的,因此第 6 行中的警告是正确的。您只在第 10 行告诉您打算使用包含 var1& var2data.table

标签: r data.table rstudio diagnostics


【解决方案1】:

这是因为你错过了function 中的大括号{}

将以下内容粘贴到您的 RStudio 中并检查。我的没有标记任何错误

# dummy df
df <- data.table(var1 = c(1,2)
                 , var2 = c(3,4)
                 ); df

# function
add_f <- function(input_dt)
{
  input_dt[, var3 := var1 + var2]
}

【讨论】:

  • 对我来说,变量仍然被标记。即使我使用括号。我选中了除“提供 R 样式...”和“... for Java Script ...”之外的所有框。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-16
  • 1970-01-01
相关资源
最近更新 更多