안녕하세요.
담당 매니저 김수민입니다.
기간제(상주) 프로젝트 희망 근무 시작일을
등록해 주시면, 파트너님의 일정에 맞는
적합한 프로젝트를 추천해 드려요.
플러스
텍스트 파일 숫자 조합 데이터 빈도 추출 MVP
개발
PC프로그램
데이터 분석ㆍBI, 기타(내부 시스템)
프로젝트 배경
1) 문제점
- 데이터 파편화로 인한 분석 불가: 약 10개의 텍스트 파일에 400만 개 이상의 숫자 조합 데이터가 분산되어 있어, 전체 데이터의 흐름이나 중복 여부를 파악하기 어려움.
- 수작업의 비효율성: 특정 숫자가 어떤 파일들에 포함되어 있는지 확인하기 위해 일일이 파일을 열어 검색하는 것은 물리적으로 불가능하며 막대한 리소스가 소요됨.
- 정확도 담보 부족: 대용량 데이터를 사람이 직접 대조할 경우 휴먼 에러 발생 가능성이 매우 높아 신뢰할 수 있는 통계 산출이 불가능함.

2) 프로젝트 목표
- 분석 프로세스 자동화: 지정된 폴더 내의 모든 텍스트 파일을 한 번에 읽어 들여 데이터 추출부터 빈도 계산까지의 전 과정을 자동화하는 데스크톱 애플리케이션 개발.
- 교차 빈도 산출: 각 고유 숫자가 총 몇 개의 다른 파일에 등장하는지(Document Frequency)를 계산하여 데이터의 분포 현황을 파악.
- 결과 통합 리포팅: 분석된 데이터를 '[고유 숫자], [파일 출현 빈도]' 형식의 단일 파일(CSV/TXT)로 통합 저장하여 즉시 업무에 활용 가능한 형태 제공.

3) 주안점
- 대용량 처리 성능 최적화: 400만 건 이상의 데이터를 지연 없이 처리하기 위해 Set과 Dictionary 자료구조를 활용한 수준의 고성능 알고리즘 설계.
- 데이터 무결성 확보: 파일 내 중복 데이터는 1회로 간주하고 파일 간 중복만 카운트하는 정확한 비즈니스 로직 구현 (Set 기반 중복 제거).
- 사용자 경험(UX) 고도화: 대용량 처리 중에도 프로그램이 멈추지 않도록 멀티스레딩을 적용하고, 실시간 진행률(Progress Bar)과 대시보드 UI를 통해 직관적인 모니터링 환경 제공.
프로젝트 성과
선형 시간 복잡도기반의 고성능 데이터 처리 확보
Set 및 Dictionary 자료구조를 활용하여 400만 개 데이터를 처리하는 핵심 알고리즘의 시간 복잡도를 O(N^2) 대신 O(N) 수준으로 설계하여 데이터 처리 시간을 수 초 이내로 단축.
휴먼 에러율 0% 및 데이터 분석 정확성 100% 달성
Set 자료구조와 정규식(Regex)을 통해 시스템적으로 처리함으로써, 수작업 시 필연적으로 발생할 수 있는 인위적 오류(Human Error)를 완전히 제거
GUI 기반 사용자 생산성 및 만족도 극대화
직관적인 GUI를 도입하여 비전문가도 쉽게 사용할 수 있는 환경을 제공함
다목적 리포팅 및 데이터 무결성 보장
CSV, TXT 등 다양한 형식으로 저장할 수 있는 유연한 리포팅 기능을 구현하고, 결과 파일의 최상단에 총 처리 파일 수 및 고유 숫자 수를 메타데이터로 기록하여, 보고서의 완성도와 데이터 검증의 투명성 확보
핵심 기능
파일 및 폴더 선택 I/O 기능
사용자가 원하는 입력/출력 파일 및 폴더를 GUI를 통해 쉽게 선택할 수 있습니다.
입력 데이터 형태(구분자) 파싱 기능
쉼표, 공백, 줄넘김 세 가지의 입력 데이터 형태에 대응 가능하며, 여러 형태의 파일을 한번에 같이 처리 가능합니다.
텍스트 분석 결과 저장 및 요약 기능
GUI를 통해 분석된 결과의 요약 정보를 한번에 확인할 수 있으며, 저장된 csv와 txt로 확인 가능합니다.
파이썬 패키징 및 실행 파일 제공
구현된 프로그램을 exe 실행 파일로 패키징하여 제공합니다.
진행 단계
요구사항 정의 및 알고리즘 설계
2025.11.
핵심 알고리즘 설계: 400만 건 데이터 처리를 위해 Set/Dictionary 기반의 O(N) 시간 복잡도를 갖는 고성능 파일별 교차 빈도 계산 로직을 설계함.
[백엔드] 고성능 로직 구현 및 GUI 통합
2025.11.
파일 파싱 및 Set 기반 중복 제거 로직을 구현하고, threading 모듈을 사용하여 GUI가 멈추지 않도록 백그라운드에서 분석 작업을 실행하는 멀티스레딩 환경을 구축함.
[프론트엔드] 고성능 로직 구현 및 GUI 통합
2025.11.
전문적이고 사용자 친화적인 GUI를 개발함. Progress Bar와 Summary Card를 구현하여 실시간 모니터링 기능을 통합함.
[I/O] 고성능 로직 구현 및 GUI 통합
2025.11.
폴더/다중 파일 입력 기능과 CSV/TXT/Both 저장 형식을 구현하고, 결과 파일 상단에 요약 정보를 자동으로 삽입하는 기능을 완성함.
대용량 부하 및 기능 검증
2025.11.
공백, 쉼표, 줄바꿈 등 세 가지 구분자 형식으로 각 파일당 40만 개의 숫자가 포함된 대용량 더미 데이터를 생성하여, 실제 클라이언트 환경과 유사한 조건에서 성능 및 안정성을 검증함.
프로젝트 상세
1) 포트폴리오 소개

서비스 카테고리: 데이터 분석 솔루션 / 윈도우 데스크톱 유틸리티

메인 타깃: 대량의 로그 파일이나 분산된 텍스트 데이터를 다루는 데이터 분석가 및 실무자

소개: 10여 개 파일에 분산된 400만 개 이상의 숫자 데이터를 통합 분석하여, 각 숫자가 몇 개의 파일에 출현했는지를 고속으로 산출하는 업무 자동화 툴 개발임.


2) 작업 범위

범위: 애플리케이션 기획, 핵심 알고리즘 설계(백엔드), GUI 개발(프론트엔드), 실행 파일 패키징

지원 환경: Windows 10/11 운영체제 (별도 Python 설치 없이 실행 가능한 .exe 제공)


3) 주요 업무

입력 편의성 강화: 폴더 단위 일괄 지정 및 개별 파일 다중 선택이 가능한 유연한 입력 인터페이스 구현함.

고성능 파싱 로직: 다양한 구분자(쉼표, 공백, 줄바꿈)가 혼재된 대용량 텍스트 데이터를 정규식 기반으로 정확하게 추출 및 정제함.

빈도 분석 알고리즘: Set 자료구조를 활용하여 파일 내 중복을 제거하고, 파일 간 교차 출현 빈도(Document Frequency)를 정확히 계산하는 로직 구성함.

대시보드 UI 구성: 분석 진행률을 실시간으로 보여주는 프로그래스바와 처리 결과(파일 수, 고유 숫자 수)를 즉시 확인 가능한 카드 형태의 대시보드 개발함.

리포트 생성: 분석 결과를 CSV, TXT 등 사용자가 원하는 형식으로 자동 저장하고 요약 정보를 포함하는 기능 구현함.


4) 주안점

퍼포먼스 최적화: 400만 개 데이터를 수 초 내에 처리하기 위해 시간 복잡도 수준의 효율적인 메모리 관리 및 알고리즘 설계에 집중함.

사용자 경험(UX) 개선: 대용량 연산 중에도 프로그램이 멈추지 않도록 멀티스레딩(Threading) 기술을 적용하여 쾌적한 사용 환경을 제공함.

전문적인 디자인: ttkbootstrap 라이브러리를 커스터마이징하여 윈도우 11 스타일의 모던하고 직관적인 다크/라이트 모드 GUI를 완성도 있게 구현함.
프로그램 메인 화면으로 입력 데이터 및 폴더 선택과 저장 경로 및 저장 파일의 형식을 지정할 수 있습니다.
폴더 선택 버튼을 통해 입력 폴더를 선택하는 화면입니다.
변경 버튼을 통해 저장 폴더를 선택하는 화면입니다.
분석 결과로 나온 csv파일입니다. 총 6개의 txt파일을 분석 후 909,744개의 결과가 정리되었습니다.
분석 결과로 나온 csv파일입니다. 총 6개의 txt파일을 분석 후 909,744개의 결과가 정리되었습니다.
분석 결과로 나온 txt파일입니다. 총 6개의 txt파일을 분석 후 909,744개의 결과가 정리되었습니다.
분석 결과로 나온 txt파일입니다. 총 6개의 txt파일을 분석 후 909,744개의 결과가 정리되었습니다.
구분자가 콤마로 구성된 약 10만개의 숫자가 포함된 입력 파일입니다. 구현한 프로그램은 콤마, 공백, 줄넘김에 모두 대응가능합니다.
구분자가 줄넘김으로 구성된 약 10만개의 숫자가 포함된 입력 파일입니다. 구현한 프로그램은 콤마, 공백, 줄넘김에 모두 대응가능합니다.
구분자가 공백으로 구성된 약 10만개의 숫자가 포함된 입력 파일입니다. 구현한 프로그램은 콤마, 공백, 줄넘김에 모두 대응가능합니다.

비슷한 프로젝트를 준비 중이라면?
위시켓 매니저와 상담하세요.

참여 개발사와 미팅 연결

프로젝트 1:1 컨설팅 제공

무료로 프로젝트 등록하기

작업한 파트너 프로필 보기

qu******
개발 · 법인사업자

프로젝트 정보

참여 기간
2025.11. ~ 2025.11.
참여율
참여율이 100%인 프로젝트는 해당 파트너님이 온전히 작업한 결과물입니다.
외부 공동 작업의 경우 기여도에 따라 참여율이 달라지며 역할, 프로젝트 설명을 통해 업무 분야 및 참여 범위를 확인할 수 있습니다.
100%
관련 기술
ttkbootstrap
Python
CSV
Tkinter