3
什么是traspose移调一个data.table(列名 - >输出的第一列)
> dt <- data.table(x = c(1, 1, 3, 1, 3, 1, 1), y = c(1, 2, 1, 2, 2, 1, 1))
> dt
x y
1: 1 1
2: 1 2
3: 3 1
4: 1 2
5: 3 2
6: 1 1
7: 1 1
到最有效的方法:
> output
cn v1 v2 v3 v4 v5 v6 v7
1: x 1 1 3 1 3 1 1
2: y 1 2 1 2 2 1 1
dcast.data.table应该是有效的,但我无法弄清楚它究竟是如何做
不知道它与仅仅'data.table(cn = names(dt),t(dt))有什么不同? –
@David Arenburg好问题;它看起来像所有[真正的工作是在C完成](https://github.com/Rdatatable/data.table/blob/d607425b44155916415485e263cd830828903ab2/src/transpose.c)。我把't'作为基准并将其添加到我的答案中。 – nrussell
@DavidArenburg,和其他本地的data.table :: function一样,我猜它是一样高效的。 这也是在 还声称是什么https://cran.r-project.org/web/packages/data.table/data.table.pdf 我有点尴尬的是这个问题实际上是多么容易。 我应该在data.table文档的'转置'上按Ctrl + F,而不是使用Google搜索。 – Amitai