melon chart crawling & EDA 실습

2024. 10. 18. 14:20· Toy Projects

처음으로 수행한 크롤링과 대회말고 개인적으로 한 EDA도 처음인 것 같습니다. 

seabon과 matplotlib의 사용이 아직은 확실히 미숙한 느낌이다. 

또한 결과물 출력을 좀 더 이쁘게 하고 싶은데 추후 수정해보겠다!!!

만약 피드백 남겨주시면 열심히 수정하겠습니다. 미숙한 코드 많이 봐주세요!!!

https://github.com/hojuna/melon_chart_insights

 

GitHub - hojuna/melon_chart_insights: 한국의 음악 스트리밍 사이트인 "melon"의 (2000~2023)년도 차트를 크롤

한국의 음악 스트리밍 사이트인 "melon"의 (2000~2023)년도 차트를 크롤링해 분석한다. - hojuna/melon_chart_insights

github.com

 

 

1. 프로젝트 설명 (Project Description)

이 프로젝트는 멜론의 년도별 차트 데이터를 곡 정보와 함께 크롤링하여 분석하는 프로젝트입니다.

<목적> 코드를 실제로 구현해 보면서 프로그래밍 실력 향상과 데이터 분석 실습을 목적으로 하고 있습니다

<기간 : 2024.10.09 ~ 2024.10.15>

 

2. 크롤링 설명 (Dataset Description)

기본적으로 셀레니움을 사용하여 크롤링을 진행하였습니다.

멜론은 년도 별 차트를 순위와 해당 노래의 정보를 크롤링하여 가져옵니다.

노래의 정보는 'song_year','song_rank', 'singer', 'title','Genre', 'lyric'로 이루어져있습니다


3. 가사의 토큰화 (Installation)

한국어 형태소 분석기인 kiwi, okt, kkma, Hannanum을 사용하여 IU의 좋은날 가사를 토큰화(명사)해 비교해본 결과 실행 결과와 실행 기간을 비교 후 Hannanum을 사용하기로 결정하였습니다.

 

Hannanum을 통해 명사, 형용사, 동사를 추출하여 가사를 토큰화하여 "lyric_tokens" 열을 만들어 저장합니다.

 


4. LDA (Latent Dirichlet Allocation)

토큰화된 가사 정보를 통해 LDA 모델을 학습하고 노래 가사의 토픽을 추출하고 분석에 활용합니다.

LDA의 결과 대로 나름대로 해석해 명칭을 지어보았습니다.

"관계와 후회",         # Topic 0
"고독과 그리움",       # Topic 1
"불안과 거짓",         # Topic 2
"삶과 감정",           # Topic 3
"사랑의 끝과 소중함"   # Topic 4
 

 


5. EDA (Exploratory Data Analysis)

-장르, 가수, 토픽을 메인으로 분석하였습니다.

-기본적으로 전체 년도의 장르 분포를 기본 막대차트로 시각화 했고

-년도 별 장르의 분포를 상위 5개의 장르를 기준으로 누적 막대차트로 나타냈습니다.

-자체적으로 트렌드 지수를 만들어 년도별 차트의 트렌드를 파악하였습니다.

<트렌드 지수는 2000~2023년도 장르의 평균 분포와 해당 년도의 장르의 분포 차이를 수치화 한 것을 의미한다.>

-데이터에 가수의 등장 횟수를 카운트하여 가수의 인기를 파악하였습니다.

-가장 오랫도록 차트에 있었던 가수를 찾기 위해 가수의 최대 연속 노래 순위를 찾아보았습니다.

-마지막으로 년도별 토픽의 분포와 토픽별로 가장 토픽 수치(퍼센트)가 높은 노래를 찾아보았습니다.

-토픽 별로 가장 흔한 장르와, 장르 별로 가장 흔한 토픽을 찾아 보았습니다.


6. 프로젝트 한계와 아쉬운 점

  • 년도 별로 차트에 중복된 노래가 있다는 것을 늦게 인지하였습니다.
  • 크롤링 다음으로 시간을 많이 쓴 토큰화와 LDA 모델의 결과가 만족스럽지 못했습니다.
  • EDA를 조금 더 세부적으로 진행하고 싶었습니다.
  • 음악을 가사로만 분석한다는 것의 한계를 느꼈습니다.

 

일단은 github REDAME파일 내용으로 작성해 놨습니다... 

자세하게 코드와 사진으로 정리해서 올리고 싶지만 ㅠ 중간고사기간 이라...

 

 

'Toy Projects' 카테고리의 다른 글

파이썬으로 엑셀 자동화  (0) 2023.02.07
'Toy Projects' 카테고리의 다른 글
  • 파이썬으로 엑셀 자동화
comoZ
comoZ
인공지능 개발자 지망생입니다!
comoZ
comoZ/이호준 - 일지
comoZ
전체
오늘
어제
  • 분류 전체보기 (76)
    • 일지 (14)
    • Algorithm (5)
      • 자료구조와 알고리즘 (2)
      • 백준 (2)
      • 이것이 코딩테스트다 with 파이썬 (1)
    • Development studies (5)
      • java (2)
      • spring (9)
      • python (1)
      • 군장병 sw개발 (6)
      • kaggle (2)
    • ai (4)
      • 혼자 공부하는 머신러닝+딥러닝 (1)
    • 수학 (0)
      • 선형대수학 (0)
      • 집합론 (0)
    • CS (0)
      • computer architecture (0)
    • Toy Projects (2)
    • 자격증 (4)
    • Reviews (18)
    • Others (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • 2024 공지!
  • 으아
  • 대체불가 인공지능 개발자를 목표로 하는 이호준입니다.

인기 글

태그

  • stackoverflow
  • Q learning
  • 큐
  • 삼항연산자
  • qu
  • 그래프 탐색
  • 스택
  • 초급1
  • 코드트리조별과제
  • Stack
  • final
  • BFS
  • Groom
  • ai역량강화
  • 미로 찾기 강화학습
  • queue
  • sw개발
  • 다운캐스팅
  • openpyxl
  • dfs
  • reinforcement learning
  • kakaoenterprise
  • 군 장병 맞춤
  • downcasting
  • sw역량강화
  • Pyinstaller
  • Tkinter
  • 코딩테스트
  • 코드트리

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.2
comoZ
melon chart crawling & EDA 실습
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.