분류 전체보기 87

유튜브 무한도전 오분순삭 크롤링

기획의도 : 가장 좋아하던 프로그램이 무한도전이라서 유튜브로 무한도전 오분순삭을 많이 시청합니다. 무한도전은 인기가 많아 영상 조회수가 백만이 넘는 영상들이 많은데 1년 이내 올라온 영상들의 경우 조회수가 백만이 넘는 영상들이 많지 않다는 것을 알게 되었습니다. 저는 무한도전 오분순삭 크롤링하여 무한도전 오분순삭 영상 50개를 뽑아 조회수가 백만 넘는게 몇 개인지를 분석하고, 조회수 높은 순으로 나열하여 그래프를 만들고, 각 영상들 맨 위에 있는 댓글에서 빈출단어를 뽑아내 댓글에 어떤 단어들이 많이 쓰여지는지를 한눈에 볼 수 있도록 시각화하였습니다. 1. 나중에 댓글을 크롤링하기 위해 동영상 url을 수집하여 저장 [None, 'https://www.youtube.com/watch?v=NSQltP1aau..

유튜브 무한도전 오분순삭 시각화

[시각화] 8. Pie Chart 조회수가 백만 이상인 영상과 백만 미만인 영상 수 비교 9. 조회수 높은 순으로 그래프 그리기 10. KoNLPy 시각화 2월달에 한 나의 첫 개인 프로젝트,, 계속 수업듣고 수업에서 배운거 응용하고 하다보니 이제서야 올리는군,, 오류도 많이 뜨고 어떤 코드를 써야 되는지 고민도 많이 했던 프로젝트였다. 최대한 배운 코드를 이용해서 했는데 아직 많이 부족한 것 같다. 잊지 않도록 차근차근 계속 공부를 해야겠다. 천천히,,꾸준히,, 꾸준히 하는게 가장 중요하니깐! 다음 프로젝트도 잘 완성할 수 있도록..!

TF-IDF(Term Frequency-Inverse Document Frequency)

▶ 단어 빈도-역 문서 빈도 ▶ 단어의 빈도와 역 문서 빈도(문서의 빈도에 특정 식을 취함)를 사용하여 DTM 내의 각 단어들마다 중요한 정도를 가중치로 주는 방법 ▶ 우선 DTM을 만든 후, TF-IDF 가중치를 부여 ▶ 주로 문서의 유사도를 구하는 작업, 검색 시스템에서 검색 결과의 중요도를 정하는 작업, 문서 내에서 특정 단어의 중요도를 구하는 작업 등에 쓰일 수 있습니다. (1) tf(d,t) : 특정 문서 d에서의 특정 단어 t의 등장 횟수. (2) df(t) : 특정 단어 t가 등장한 문서의 수. (3) idf(d, t) : df(t)에 반비례하는 수. DF의 역수, 여러 문서에서 등장한 단어의 가중치를 낮추는 역할 ▶ TF-IDF는 모든 문서에서 자주 등장하는 단어는 중요도가 낮다고 판단하며..

PYTHON/자연어 2022.03.16

Bag of Words(BoW)

▶ 국소 표현에(Local Representation)에 속하며, 단어의 빈도수를 카운트(Count)하여 단어를 수치화하는 단어 표현 방법 ▶ 단어들의 순서는 전혀 고려하지 않고, 단어들의 출현 빈도(frequency)에만 집중하는 텍스트 데이터의 수치화 표현 방법 ▶ BoW를 만드는 과정을 이렇게 두 가지 과정으로 생각해보겠습니다. (1) 각 단어에 고유한 정수 인덱스를 부여합니다. # 단어 집합 생성. (2) 각 인덱스의 위치에 단어 토큰의 등장 횟수를 기록한 벡터를 만듭니다.

PYTHON/자연어 2022.03.16

pivot_table()

피벗테이블은 데이터 요약화 도구로써 하나 이상의 키로 수집해서 어떤 키는 로우에, 어떤 키는 컬럼에 나열해서 데이터를 정렬한다. ▶ 인덱스 여러개 지정 ▶ 특정 value만 지정 value를 피봇테이블로 합친 경우, 평균치가 기본이 된다. 여기에 합계를 사용하려면 aggfunc 옵션을 사용해서 np.sum을 사용하면 된다. ▶ aggfunc 옵션 사용 ▶ 빈 칸이 나타나면 NaN으로 두지 말고 fill_value옵션을 이용해서 0으로 채웁니다. pd.pivot_table(df, index=[ 'Rep','Manager','Product'], values = ['Price', 'Quantity'], aggfunc = [np.sum, np.mean], fill_value=0, margins=True) ☞ m..

PYTHON 2022.03.01

concat

→ 단순 합치기 → 특별히 concat 명령에 keys 옵션으로 구분할 수 있다. 이렇게 key 지정된 구분은 다중 index가 되어서 level을 형성한다. ----------------------------------------------------------------------------------------------------------------------------------- pd.concat([df1, df4], axis = 1, join = 'inner') 공통된 인덱스로 합치고 공통되지 않은 인덱스의 데이터는 버리도록 하는게 join = 'inner' 다 pd.concat([df1, df4], axis=1, join_axes=[df1.index]) df1의 인덱스에 맞추도록 한 것...

PYTHON 2022.02.24