最新DIStruct使用说明

更新时间:2023-05-05 23:04:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1

Introduction

2

聚类软件结构;提供了将个体置入K簇的迭代算法。 K是预先选择的参数,3

但可以在独立structure软件运行中是可以变化的。每个个体都会被分到每个4

簇(总簇为K)“成员系数(成员协同因素/系数)”,使得每个个体在K簇中的“成5

员系数”系数总和均为1(意思是把每个个体的成分分到K簇中去,这样每个个6

体在K簇中就都有成分了,一个个体在K簇中的成分值加起来就为1,不是每个7

个体在每个簇中都有成分分布,个体在某一个簇中没有成分则其“成员系数”8

系数则为0)。隶属系数矩阵,其中个体数就是行数,K就是列数,这里被称为9

单独的Q矩阵。对于每个群体(population),可以对每个簇(亚群)的成员10

系数可以通过每个个体进行平均计算,以创建群体Q的矩阵。

11

12

显示structure软件结果的一种方便的方式是将每个体显示为一条线段。该13

线段被划分为K个彩色组分(K种不同的颜色),它们代表个体在K个簇中预估14

的成员系数(成员协同因素/系数)隶属系数。structure软件提供了基于这15

个一般想法创建图形的各种选择。可以制作没有使用structure软件的分散图16

来生成单独(个体)的Q矩阵和群体Q矩阵。如果使用其他程序,则这些程17

序的输出结果(格式)必须简单地被格式化以匹配distruct的数据输入格

18

式。对于本手册的其余部分,默认structure软件产生的数据作为本软件的19

输入数据与格式。

20

Basic owerview

21

distruct程序用C语言编写,编译版本适用于Linux,Mac OSX和Windows。

22

它根据structure软件的输出数据(格式)来读取数据文件(意思是必须使用23

structure软件的结果文件,才能在用本软件上使用)。它允许其他可选文件,

1

24

允许用户控所要显示群体的从左到右的顺序,标签打印在图上方和/或下方的25

数据,簇的从底到顶的顺序以及所使用的颜色。输出以PostScript格式打印,26

可以使用Ghost View等程序显示生成的图形。如果这个数字不能令人满意,27

通常可以直接修改Post Script代码,而不必重新运行distruct(实际上,如28

果程序似乎没有做你想要的操作,PostScript脚本经常可以帮助修改和完善)。

29

程序设置在文件drawparams中指定,尽管有些可以使用命令行参数给出。本30

文档中的全部大写字母中的变量用于drawparams

31

Input files

32

要绘制的数据以从structure软件输出派生的ASCII文本格式的文件中指定。

33

为了允许structure软件输出文件的多次修改,不使用结构输出文件本身。相34

反,程序采用一个具有群体Q矩阵(必需)的文件,并且具有单个Q矩阵(可35

选)的单独文件,这都是structure软件的输出文件,这些(本软件需要的)36

文件可以很容易地生成,例如通过剪切和粘贴。

37

本文档中使用的示例输入文件是从Rosenberg等人的图2中显示的针对中南/ 38

南亚群体的K = 5图形进行修改的。除了破坏代码,distruct包包含与此数据39

集相关的七个文件以及文件drawparams。文件casia f是structure软件的输40

出文件。文件casia.ps是应用于其他五个文件中的数据和设置时的输出结果,41

如表1到5(刚好为5个文件)所示。 Color Brewer目录中提供了各种各样的42

配色图。

43

群体Q 矩阵

44

如果NUMPOPS(number of population)是预定义群体的数量,K是簇数量,则45

distruct期望具有每行NUMPOPS行和K + 2列的文件。此文件存储在INFILE POPQ 46

中。空白行和额外的空格是容忍的。在表1的示例中,NUMPOPS = 9和K = 5。

47

在表1中,每行代表一个群体的结果。第一列是一个整数是为一个群体(品种

2

48

/品系)提供的一个代码(编号),且后面要跟一个冒号。挨着的K列是簇1,2,...,49

K([0,1]中的实数)的隶属系数(成员协同因素/系数)。理想情况下,这些K 50

列中的数字总和为1; 如果他们不这样做,那么程序将它们归结为一般。最后51

一列给出了群体(品种/品系)(一个整数)的样本大小(意思就是一个品种/品52

系采了好多份样品)。

53

54

虽然大多数应用程序可能会显示单个Q矩阵,但一些应用程序可能希望仅显55

示群体Q矩阵(例如,Wilson等人(2001)的表2)。因此,如果PRINT- INDIVS 56

设置为零,则distruct将仅显示群体Q矩阵。如

57

58

2.2 个体Q矩阵

59

如果NUMINDS(number of individual)是个体的数量,PRINT INDIVS设置

3

60

为1,则distruct需要具有NUMINDS行的文件,每行至少有K + 6列。该文件61

存储在INFILE-INDIVQ。空行和空格是被允许的。此外,structure软件输出的62

用于置信区间的一些列将被忽略。在表2所示的示例中,NUMINDS = 210。每63

一行显示1个体的成员系数(成员协同因素/系数)。第2列给出个体的代码(编64

号)。第4列给出了个体所属种群(品种/品系)的代码。第1列,第3列和65

第5列被忽略。列6至K + 5显示群集1,2,...,K的成员系数(成员协同因66

素/系数)。理想情况下,这些K列中的数字为1; 如果他们没有,程序将它们的67

总和归一化。

68

个体根据种群(品种/品系)的代码自动分组归类,图中个体的从左到右的顺69

序与输入文件中个人的从上到下的顺序相同。显示单个Q矩阵的示例在70

Rosenberg等人的图1和图2中。

71

72

2.3 Labels below the figure

73

要将标签放在图下方,请将PRINT LABEL BELOW设置为1.程序将搜索INFILE 74

LABEL BELOW指定的文件。默认值是将群体代码(编号)打印为标签。如果找75

到该文件,文件行上的群体的输入顺序将用于群体图形的左右顺序。第一列包76

含群体代码(一个整数); 其余的列包含要打印在图下方的文本。

77

请注意,数据中未找到的其群体可以包含在该文件中。这些额外的行将被忽78

略。

4

79

80

当使用PRINT LABEL ATOP = 1时,图形上方的标签类似于以下标签。程序81

将搜索INFILE LABEL ATOP指定的文件。默认是将群体的代码打印为标签。如82

果找到该文件,文件行上的群体顺序将用于总体图形的左右顺序。如果图形的83

顶部和底部需要标签,INFILE LABEL ATOP和INFILE LABEL BELOW中的条目应84

按相同的顺序列出。第一列包含群体的代码(编号)(一个整数); 其余的列85

包含要在图表上方打印的文本。与下图中的标签一样,此文本可以由多列组成。

86

颜色数的确定,K值多大就有多少种颜色,当颜色数不够时可以在文件夹87

ColorBrewer中选用。

88

89

2.5 Vertical cluster order and cluster colors(垂直集群顺序和集群90

颜色)

91

描述簇的垂直顺序的排列可以在指定的INFILE CLUST PERM文件中给出。此92

处还指定了用于该图的颜色。如果未检测到文件,则使用INFILE POPQ中群集

5

93

的从左到右的顺序。一些允许的颜色的名称如图1所示。打印机的颜色可能会94

有很大差异。该文件的第一列必须包含{1,2 ... K}中整数的置换。第二列95

中的条目必须是从(不区分大小写)允许的列表中获取的颜色。

96

集群的最大数量设置为60,如果没有指定INFILE CLUST PERM文件,则将从97

图1的前两行按顺序获取集群的颜色。如果GRAYSCALE设置为1,则输入[0,1] 98

中的实数代替颜色名称。在此方案中,0对应于黑色,1对应于白色。

99

本程序还承认了Color Brewer(Breweret al。,2003; Harrower and Brewer,100

2003)中实施的配色方案。这些配色方案,包含3-12种颜色,如图2-9所示。101

可以使用特定的颜色酿造颜色来产生变形图

102

颜色布局方案有三种类型 - 定性(图2和图3),分歧(图4和图5)和顺序103

(图6) -9)。定性方案可能最适合大多数描绘群体结构。例如,要使用Color 104

Brewer颜色方案Accent 5 qual而不是casia.perm中的方案,请在drawparams 105

文件中使用Color Brewer / Accent 5 qual替换INFILE CLUST PERM值的106

casia.perm。 Accent 5 qual中的行可以重新排列,以产生与casia.perm中相107

同的底-----顶群集顺序。

108

109

2.6 Formatting errors

110

如同structure软件一样,程序会尝试验证输入文件的格式是否正确,并报111

告发现的错误。如果发现严重的“错误”,程序将退出。在某些情况下,问题112

不严重,发出“注”或“警告”,程序将执行。可能会导致程序的期望使用情113

况产生笔记或警告。编辑要用于扩展的文件可能会在文本的末尾引入隐藏的格114

式化字符。与structure软件一样类似,当输入文件似乎格式正确时,这是错115

误的最常见原因之一。在UNIX系统中,dos2unix函数可以删除许多这些字符。

6

116

117

3 Usage options

118

最好将distruct和所有需要执行的文件放在同一个目录中。每次执行119

distruct时,它会从文件drawparams中读取其指令。该文件的格式类似于结120

构的mainparams和extraparams文件。每个参数都以文件中的全部大写形式121

打印,前面加上“#define”一词(参数也全部打印在本文档中)。该值取自紧122

随参数名称的字段(例如“#define FONTHEIGHT 10”将字体高度设置为10)123

7

本文来源:https://www.bwwdw.com/article/3qje.html

Top