2012-06-07 31 views
0

重新排序数据,我看到这些代码从这里:http://learnr.wordpress.com/2009/08/10/ggplot2-version-of-figures-in-lattice-multivariate-data-visualization-with-r-part-9/要通过hclust R中

hc1 <- hclust(dist(USArrests, method = "canberra")) 
hc1 <- as.dendrogram(hc1) 
ord.hc1 <- order.dendrogram(hc1) 
hc2 <- reorder(hc1, state.region[ord.hc1]) 
ord.hc2 <- order.dendrogram(hc2) 
region.colors <- trellis.par.get("superpose.polygon")$col 
USArrests2 <- melt(t(scale(USArrests))) 
USArrests2$X2 <- factor(USArrests2$X2, levels = state.name[ord.hc2]) 

但我在第四行有关state.region变量很困惑。

订单的变量是ord.hc1是从USArrests生成的,这似乎与state.region无关。那么为什么它使用state.region重新排序而不是USArrests数据框中的一列?

+1

你能告诉我哪个软件包有这些数据吗? – Subs

+0

@Subs,它是'datasets'的一部分:http://stat.ethz.ch/R-manual/R-patched/library/datasets/html/USArrests.html – Ben

+1

和'state.region' is'a factor giving每个国家所属的地区(东北,南,北中,西)。“比照http://stat.ethz.ch/R-manual/R-patched/library/datasets/html/state.html – Ben

回答

0

看看在state.region帮助文件 -

?state.region 

第一句下详细,是

R currently contains the following "state" data sets. 
Note that all data are arranged according to alphabetical 
order of the state names. 

这意味着我们可以在美国数据集之间的跳跃,因为它们是全部在相同的顺序,即USArrests的第一个条目的状态是与state.region中的状态相同。