[未知用户] 哈哈,细节还是很重要的,谢谢老师指出。无名氏是算在1377人中的,本来我想删掉,但后来一想可以作为一个参考,所以就没动。
几个典型的词牌和作者可以看下面这张图:
白色、绿色和蓝色分别代表无名氏、辛弃疾和苏轼(因为排序的缘故,这三个圆在之前的图中几乎是重合的,我在这里是调整了它们的半径,使得它们能区分开),黄色、红色和紫色分别表示浣溪沙、鹧鸪天和水调歌头。
排序用的是
seriation
包的
seriate()
函数(最后的代码中有),它没有指定类数,算法是最大化ME(Measure of Effectiveness)准则,定义为
[latex]M(X) = 1/2 \sum_{i=1}^{n} \sum_{j=1}^{m} x_{i,j}(x_{i,j-1}+x_{i,j+1}+x_{i-1,j}+x_{i+1,j})[/latex]
不过是个NP难度的优化。