텍스트 파일의 고유 요소 수 계산

텍스트 파일의 고유 요소 수 계산

사용자 트윗이 포함된 텍스트 파일이 있습니다.

470192   anneJackson    Apple's new iPhone is a no go for me
470193   trex90         For something so expensive, I'll go for Android anyway 
470194   anneJackson    What an outrageous pricing!

첫 번째 열은 ID를 나타내고 그 다음에는 사용자 이름과 사용자의 트윗이 표시됩니다. 지금 하고 싶은 것은 고유 사용자당 트윗 수를 계산하는 명령을 작성하는 것입니다. 이는 다음과 같은 결과를 제공합니다.

anneJackson   2
trex          1

나는 비슷한 것을 시도했습니다 :

cut -f 2 Twitter_Data_1 | sort | uniq -c

하지만 사용자 열만 사용하고 트윗은 포함하지 않기 때문에 옳지 않은 느낌이 듭니다.

답변1

좋은 일이야:

awk '{ a[$2]++ }END{ for(i in a) printf "%-15s%s\n",i,a[i] }' Twitter_Data_1
  • a[$2]++- 각 고유의 발생 횟수를 늘립니다.사용자 이름(두 번째 필드 값으로 표시 $2)

산출:

trex90         1
anneJackson    2

답변2

파일에 고정 너비 열이 있고 열 사이의 공백이 탭 대신 공백이라고 가정하면,

cut -c 10-24 Twitter_Data_1 | sort | uniq -c

이것이 당신에게 줄 것입니다

      2 anneJackson    
      1 trex90         

각 줄은 트윗을 나타내므로 명령에 트윗을 포함할 필요가 없습니다.

관련 정보