我有一个像这样的数据文件
H1 H2 H3 E1 E2 E3 C1 C2 C3
0 0 0 0 0 0 0 0 1
1 0 0 0 1 0 0 0 1
0 1 0 0 1 0 1 0 1
现在我想计算H1
,H2
,H3
与E1
,E2
和E3
具有相同模式的行数。例如,我想计算时间H1
,H2
,H3
和E1
,E2
,E3
都是{{ 1}}或010
。
我尝试使用此代码,但它并没有真正起作用
000
答案 0 :(得分:3)
像
这样的东西>>> awk '$1$2$3 == $4$5$6' input | wc -l
2
它的作用是什么?
$1$2$3 == $4$5$6
检查由列1 2和3组成的字符串是否等于4 5和6形成的列。如果为真,awk
采用默认的打印整行的操作并且wc
负责计算这些线。或者,如果您想要完整的awk
解决方案,可以编写
>>> awk '$1$2$3 == $4$5$6{count++} END{print count}' input
2