반응형
지난 시간에 n-gram으로 나눠서 데이터를 저장하는 것 까지 하였다.
이번시간에는 그 데이터를 이용해서,
데이터의 빈도수를 확인하는 방법에 대해 알아본다.
저장된 데이터를 한 줄씩 읽어와서
그 데이터를 다음 데이터와 비교하여 중복된다면 갯수를 올리고,
그렇지 않다면 다음 데이터와 비교한다.
정리해보자.
1. n-gram data를 읽어와서 저장한다.
2. n-gram data를 분석하기 편하게 qsort를 이용해 정렬한다.
3. 중복된 데이터를 삭제하고 빈도수 계산한다.
4. 결과를 다시 qsort를 이용해 정렬한다.
- #include<stdio.h>
- #include<stdlib.h>
- #include<string.h>
- #define MAX_N 10
- #define NGRAM_NUM 1000000
- #define NUMF 4
- char data[NGRAM_NUM][MAX_N];
- char result[NGRAM_NUM][MAX_N+NUMF];
- int strcomparecount(int size, char data[NGRAM_NUM][MAX_N], char result[NGRAM_NUM][MAX_N+NUMF]);
- int main()
- {
- FILE *pfile;
- char tmp_data[MAX_N];
- //저장된 Text 파일 오픈
- {
- }
- //file 의 끝까지 한줄씩 읽어온다.
- {
- strncpy(data[i], tmp_data, MAX_N);
- puts(data[i]);
- i++;
- }
- //데이터 정리
- //중복된 데이터 정리
- //새로 데이터 정리
- puts(result[i]);
- }
- int strcomparecount(int size, char data[NGRAM_NUM][MAX_N],
- char result[NGRAM_NUM][MAX_N+NUMF])
- {
- int i=0;
- char lastdata[MAX_N];
- strncpy(lastdata, data[0], MAX_N);
- for(n=1;n<size;n++)
- {
- {
- count++;
- }
- else
- {
- strncpy(lastdata, data[n], MAX_N);
- count=0;
- }
- }
- return i;
- }
반응형
'AI > Machine Learning' 카테고리의 다른 글
유전 학습 - 1 (0) | 2014.05.22 |
---|---|
지도 학습 - 1 (0) | 2014.05.21 |
n-gram 출현빈도에 기초한 텍스트 데이터 학습 - 1 (0) | 2014.05.18 |
텍스트 마이닝 - 1 (0) | 2014.05.18 |
최소자승법을 이용한 학습 프로그램 - 2 (1) | 2014.05.15 |