小编Jir*_*rka的帖子

如何计算空单元格之间的值

我面临一个比我更大的问题。我有 18 个相对较大的文本文件(每个大约 30k 行),我需要计算第二列中空单元格之间的值。这是我的文件的一个简单示例:

Metabolism
line_1    10.2
line_2    10.1
line_3    10.3
TCA_cycle
line_4    10.7
line_5    10.8
Pyruvate_metab
line_6   100.8
Run Code Online (Sandbox Code Playgroud)

实际上,我有大约 500 条描述行(代谢、TCA_cycle 等),行的范围在零到几百之间。

我想计算每个块的值(块以描述开头,对应的行总是在下面),例如

Metabolism  30.6
line_1    10.2
line_2    10.1
line_3    10.3
TCA_cycle   21.5
line_4    10.7
line_5    10.8
Pyruvate_metab 100.8
line_6   100.8
Run Code Online (Sandbox Code Playgroud)

要不就

30.3
21.5
100.8
Run Code Online (Sandbox Code Playgroud)

如果将结果逐行打印到附加文件中,那不会有问题……或者其他替代方法。

有一件棘手的事情,它是没有数字行的描述。

Transport
line_1000   100.1
line_1001   100.2
Cell_signal
Motility
Processing
Translation
line_1002   500.1
line_1003   200.2
Run Code Online (Sandbox Code Playgroud)

甚至对于那些行并希望获得 0 值。

Transport     200.3
line_1000   100.1
line_1001   100.2
Cell_signal   0
Motility      0
Processing    0
Translation   700.3
line_1002 …
Run Code Online (Sandbox Code Playgroud)

awk

6
推荐指数
1
解决办法
144
查看次数

标签 统计

awk ×1