Chinaunix
标题:
请教大家一个算法的实现
[打印本页]
作者:
flint1985
时间:
2009-11-11 19:58
标题:
请教大家一个算法的实现
我有一个文件 是5000多行 24列的 其中每行的数字分别由0和1组成 中间由tab隔开。
现在我想做一个运算 比如第一行是 1 0 1 1 第二行是1 1 0 0
经过运算后
第一行 第一个数 为 |v1-v1|=|1-1|+|0-0|+|1-1|+|1-1|=0
第一行 第二个数 为 |v1-v2|=|1-1|+|0-1|+|1-0|+|1-0|=3
以此类推
请问如何实现
作者:
cu_eagle
时间:
2009-11-11 20:08
看不懂,你还不如把文件和预期结果贴出来
作者:
haimming
时间:
2009-11-11 20:27
是不是列相减再求和?
作者:
blackold
时间:
2009-11-11 20:35
标题:
回复 #1 flint1985 的帖子
只两行,如何类推?
第三行是什么?
为什么都是第一行?第一行有几个数?
搞清楚用awk就可以解决了。
作者:
ywlscpl
时间:
2009-11-11 21:17
awk -F '\t' 'NR>1{for (i=1;i<=NF;i++) if (n[i]!=$i) m++;print 0"\t"m}{for (i=1;i<=NF;i++) n[i]=$i;m=0}' file
复制代码
[
本帖最后由 ywlscpl 于 2009-11-11 21:22 编辑
]
作者:
beginner-bj
时间:
2009-11-11 23:48
就是异或后再求和
有些平台的awk有xor函数
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2