【发布时间】:2017-05-26 09:13:16
【问题描述】:
我有一个文件格式,如下例所示,显示了包括他们自己在内的 5 个人之间的关系。
1 1 1.0
2 1 0.5
3 1 0.1
4 1 0.3
5 1 0.1
2 2 1.0
3 2 0.5
4 2 0.2
5 2 0.3
3 3 1.0
4 3 0.5
5 3 0.3
4 4 1.0
5 4 0.1
5 5 1.0
我想使用 AWK 将其转换为完整的矩阵格式。我需要像示例中那样对行和列进行数字排序。
1 2 3 4 5
1 1.0 0.5 0.1 0.3 0.1
2 0.5 1.0 0.5 0.2 0.3
3 0.1 0.5 1.0 0.5 0.3
4 0.3 0.2 0.5 1.0 0.1
5 0.1 0.3 0.3 0.1 1.0
我遇到了以前的线程(如下),但输入文件的格式略有不同,我正在努力调整它。 http://www.unix.com/shell-programming-and-scripting/203483-how-rearrange-matrix-awk.html
我该如何进行这种转换?
【问题讨论】:
-
A到E的键是否代表您真实数据中的键?是否要求它们在输出中按字母顺序排序? -
A 到 E 的实际值是数字(10 到 13 位),是的,它们需要按数字排序
-
好的,这是有用的信息,所以它应该进入你的问题。 edit 也可能更新您的示例,因此使用数字而不是字母(它们显然不必包含这么多数字!)。
-
排序数字会破坏你的字母顺序
A B C D E,所以应该排序字母,而不是数字(以获得矩阵) -
在你上次编辑后,输入输出变得不可读
标签: awk