1
給定一個multilangual .txt文件如:awk:從一個文本文件的字符頻率?
But where is Esope the holly Bastard
But where is 생 지 옥 이 군
지 옥 이
지 옥
지
我 是 你 的 爸 爸 !
爸 爸 ! ! !
你 不 會 的 !
我計數空格分隔單詞使用該awk中功能詞頻:
$ awk '{a[$1]++}END{for(k in a)print a[k],k}' RS=" |\n" myfile.txt | sort
獲取優雅:
1 생
1 군
1 Bastard
1 Esope
1 holly
1 the
1 不
1 我
1 是
1 會
2 이
2 But
2 is
2 where
2 你
2 的
3 옥
4 지
4 爸
5 !
如何改變它來計算字符頻率?
編輯:對於人物頻率,我用(@ Sudo_O的答案):
$ grep -o '\S' myfile.txt | awk '{a[$1]++}END{for(k in a)print a[k],k}' | sort > myoutput.txt
對於詞頻,用途:
$ grep -o '\w*' myfile.txt | awk '{a[$1]++}END{for(k in a)print a[k],k}' | sort > myoutput.txt
謝謝!快樂你回答! – Hugolpz 2013-03-24 18:07:52
有趣,都是** $ grep -o。文件**和** $ grep -o'\ S'文件**有效。他們都正確嗎? – Hugolpz 2013-03-24 18:25:09
@Hugolpz好點。不,它是不正確的..最初我發佈了'grep -o .',但是會匹配空格,所以我將它改爲'grep -o'\ S'',其中'\ S'是正則表達式的簡寫符合任何非空格字符。 – 2013-03-24 18:27:34