我试图让一个匿名函数在a的j参数中返回多个列data.table.这是一个例子:
## sample data
tmpdt <- data.table(a = c(rep("a", 5), rep("b", 5)),
b = c(rep("f", 3), rep("r", 7)),
c = 1:10,
d = 21:30)
tmpdt[c %in% c(2,4), c := NA]
## this works fine
tmpdt[ , list(testout =
(function(x) {
model <- lm(c ~ d, x)
residuals(model)
})(.SD)),
by = a]
## but I want to return a data.frame from the
## anonymous function
tmpdt[ , list(testout =
(function(x) {
model <- lm(c ~ d, x) …Run Code Online (Sandbox Code Playgroud) 我正在寻找一种优雅的方法来迭代data.table的键,删除具有该键的行,然后对剩余的行进行汇总.例如:
mydt <- data.table(cat=c("a","a","b","b","c","c","c"), vals = 1:7)
setkey(mydt,cat)
tmp1 <- mydt[!"a"][,mean(vals)]
tmp2 <- mydt[!"b"][,mean(vals)]
tmp3 <- mydt[!"c"][,mean(vals)]
outdt <- data.table(cat=c("a","b","c"),means=c(tmp1,tmp2,tmp3))
Run Code Online (Sandbox Code Playgroud)
有没有办法循环键,优雅地做到这一点?谢谢.
我正在尝试将源块添加到可见性循环树中。本质上,我希望将源块视为其标题的子项。考虑以下组织模式文档:
* Heading 1
** Heading 2
#+BEGIN_SRC R
print("hello world")
#+END_SRC
** Heading 3
Run Code Online (Sandbox Code Playgroud)
我希望能够在标题一上按 TAB 来循环折叠各个部分,包括源块。目前 org-mode 似乎确实具有折叠源代码块的功能,因为如果我转到 #+BEGIN_SRC R 并点击选项卡,我可以折叠它,但它似乎没有在全局循环中得到处理。有什么建议可以添加吗?
谢谢!
我用org-mode写论文和幻灯片.生成表格和图形的代码放在源块中.大多数时候我在幻灯片中使用与我的论文中相同的表格,但是生成表格需要大量的预处理代码.我想将这些表的生成放在自己的组织模式文件中,并且只能在纸张或幻灯片文档中包含某些标题.例如,我将有一个名为mytables.org的组织模式文档:
* Heading 1
** Regressions
#+BEGIN_SRC R
cat("hello world")
#+END_SRC R
* Heading 2
Run Code Online (Sandbox Code Playgroud)
另一份文件mypaper.org:
* Section 1
#+INCLUDE: "mytables.org" :heading "Heading 1/Regressions"
* Section 2
Run Code Online (Sandbox Code Playgroud)
mytables.org中**回归标题下方的内容将包含在mypaper.org的导出中.能够使用Cc'跟随INCLUDE到文件也很棒.Org为这些包括提供了一些设施,但不允许标题(http://orgmode.org/manual/Include-files.html).显然org没有:heading参数,但是非常感谢任何有关解决方案的建议.
谢谢.
我正在尝试使用data.table来填充我所拥有的大型不平衡多维面板中的缺失观察结果.下面是一个数据示例,其中包含一些关于我想要的内容的评论:
mydat <- structure(list(fund = c(1, 1, 1, 1, 2, 2, 2, 3, 3), holdingid = c(10,
10, 11, 11, 15, 15, 14, 20, 20), yearqtr = structure(c(2000,
2000.5, 2000, 2000.25, 2000, 2000.75, 2000.25, 2000.25, 2000.5
), class = "yearqtr"), shares = c(20, 25, 30, 30, 34, 34, 4,
8, 10)), .Names = c("fund", "holdingid", "yearqtr", "shares"), row.names = c(NA,
-9L), class = "data.frame")
allqtrs <- structure(c(2000, 2000.25, 2000.5, 2000.75), class = "yearqtr")
#note that there are missing yearqtrs for …Run Code Online (Sandbox Code Playgroud) 我试图将一组列与另一列进行区分data.table。这是一个简单的例子:
library(data.table)
dt <- data.table(a=1:10,b=11:20,d=21:30)
mycols <- c("b","d")
dt[,c(paste0("diff",mycols)):=lapply(mycols, function(x, env) get(x,env) - get("a",env), env=dt)]
dt
a b d diffb diffd
1: 1 11 21 10 20
2: 2 12 22 10 20
3: 3 13 23 10 20
4: 4 14 24 10 20
5: 5 15 25 10 20
6: 6 16 26 10 20
7: 7 17 27 10 20
8: 8 18 28 10 20
9: 9 19 29 10 20
10: 10 20 …Run Code Online (Sandbox Code Playgroud)