以树格式存储数据R
问题描述:
我想以r格式存储数据。 R中是否有可用的软件包? 数据样本:以树格式存储数据R
lat lon ,v1,v2,v3,parent,id
23.9917345,90.4195876,83,3,0,0,1
这里父列代表当前行的父ID
答
您可以找到儿童不与aggregate(id, by=list(parent=parent), paste, collapse=" ")
循环:
例子:
> n <- 30; d <- data.frame(parent=sample(n,n,TRUE), id=1:n, value=runif(n))
> children <- with(d, aggregate(id, by=list(parent=parent), paste, collapse=" "))
> children
parent x
1 2 24
2 3 12 20 28
3 4 5
4 7 8 17 18
5 8 29
(剪下)
现在你可以合并,在原始数据集与此:
> names(children) <- c("id", "children")
> merge(d, children, all.x=TRUE)
id parent value children
1 1 13 0.319805784 <NA>
2 2 24 0.847229065 24
3 3 21 0.946230816 12 20 28
4 4 12 0.915684833 5
5 5 4 0.754628841 <NA>
(剪断)
你的问题就没有意义了我。这种“树形格式”在您尝试在R中复制的另一种语言中是否共同?根据你显示的实际数据,'data.frame()'对我来说是合乎逻辑的选择,但也许有一些我错过了。 – Chase 2013-03-27 17:54:39
我的意思是树数据结构。 – 2013-03-27 17:58:34
是的,这可能是(也许只是我的问题)......什么是“树数据结构”?什么性质使“树数据结构”与R中的其他本地数据结构不同? [这里](http://www.stat.auckland.ac.nz/~paul/ItDT/HTML/node64.html)是它们的列表。 – Chase 2013-03-27 18:01:03