반응형

Python tech 37

[camelot] PDF 테이블 인식 plot 기능 정리

Camelot이란? PDF 파일에서 표(Table, 이하 테이블)을 추출(Extract)해주는 Python 라이브러리 Camelot의 다양한 기능 중에서 plot 기능에 대해 알아보겠습니다. camelot.plot()은 camelot이 추출한 테이블을 여러 형태로 시각화해주는 기능입니다. 아래와 같은 총 6가지 기능이 있고, 하나씩 살펴보겠습니다. contour grid line joint text textedge 이 포스팅은 카멜롯 공식 문서를 참조하였습니다. camelot-py.readthedocs.io/en/master/user/advanced.html#visual-debugging 사용법 # 첫 번째 인자는 camelot table 객체 # 두 번째 인자는 kind에 plot 기능 중 하나를 설정..

[Python] 단어 빈도 분석 + 워드 클라우드

특정 기간에서 사람들의 관심 주제를 알아보기위해 단어 빈도 분석을 진행합니다. import nltk # make noun frequency graph per religion def make_top_word_graph( result, top ): tokens = result.split(" ") # 문자열을 공백 기준으로 구분 text = nltk.Text(tokens) # nltk topWord = text.vocab().most_common(top) # top n word count = 30 # top word on graph xlist = [a[0] for a in topWord[:count ]] ylist = [a[1] for a in topWord[:count ]] plt.figure(0) font..

Python tech/NLP 2021.02.08

[Python] 감성 분석 결과 + 유의미한 차이인지 확인

지난 포스팅에서 딥러닝 모델을 활용하여 댓글 데이터의 감성을 예측하였습니다. tech-diary.tistory.com/9 [Python, keras] 딥러닝을 활용한 감성 예측 + 그래프 생성(plot) 지난 포스팅에서 keras를 활용하여 딥러닝 모델을 생성했습니다. 생성된 모델을 활용하여 새로운 데이터의 감성을 예측해봅시다. 저장된 RNN 모델을 불러옵니다. 이때, TextVectorization으로 생성된 tech-diary.tistory.com 이번에는 생성된 종교별 감성 흐름 그래프의 차이가 유의미한 차이인지 확인해보도록 하겠습니다. 본 포스팅에서는 다음 3가지 방법을 통해 감성값의 차이를 검증합니다. 댓글 개수 표준 편차 유의 확률 월별 댓글 개수 그래프 '댓글 개수가 많다' 는 것은.......

Python tech/NLP 2021.02.07

[Python, keras] 딥러닝을 활용한 감성 예측 + 그래프 생성(plot)

지난 포스팅에서 keras를 활용하여 딥러닝 모델을 생성했습니다. 생성된 모델을 활용하여 새로운 데이터의 감성을 예측해봅시다. 저장된 RNN 모델을 불러옵니다. 이때, TextVectorization으로 생성된 모델이기 때문에, custom_objects에 TextVectorization를 설정해주어야 합니다. # load RNN model rnn_model = tf.keras.models.load_model("../save_dir/rnn_model", \ custom_objects={"TextVectorization":TextVectorization}) 새로운 댓글 데이터의 감성값을 예측하는 방법입니다. sentiment = float(rnn_model.predict([comment])) predict..

Python tech/NLP 2021.02.07

[Python keras] 감성 분석 딥러닝 모델 생성 - TextVectorization

Python tensorflow keras textvectorization sentimental analysis using deep learning 준비해야할 것 : 수집한 댓글 데이터 훈련 데이터(Train Data)를 생성하기 위해 약 900개의 댓글을 하나하나 레이블링(Labeling) 해주었습니다. 이때, 감성 수치는 긍정은 1, 부정은 0 제가 레이블링한 데이터를 사용하고 싶다면 아래 링크에서 train-data/comment-labeling.csv 파일을 활용하셔도 됩니다. >> github.com/Minku-Koo/Comment-Sentiment-Analysis 900개의 훈련 데이터가 부족할 것이라고 판단해서 전이 학습(Transfer Learning)을 시키기로 하였습니다. 아래 링크는 ..

Python tech/NLP 2021.02.01

[Python] PyQt5를 exe 파일로 만들기 (오류 해결 과정)

PyQt5로 제작한 프로그램을 exe 파일로 만들어봅시다. 실행하기도 편리하고, 배포하기도 쉽습니다. 1. pyinstaller 설치 python은 pyinstaller를 통해 exe 파일로 만들 수 있습니다. cmd> pip install pyinstaller pip로 간단하게 pyinstaller 설치가 가능합니다. 설치중 오류가 발생한다거나, 최신 버전 설치가 필요하신 분은 수동으로 설치해주어야 합니다. @최신 버전 수동 설치 pip install https://github.com/pyinstaller/pyinstaller/archive/develop.tar.gz 2. exe 파일 생성, using pyinstaller 가장 기본적인 exe 파일 생성 방법은 아래와 같습니다. 예시로, 파이썬 파일 ..

[PyQt5] QPixmap에서 jpg 파일이 보이지 않는 현상 해결

PyQt5로 프로그램을 만들던 도중 문제가 발생했다. QPixmap으로 이미지를 보여주려는데 jpg 이미지가 보여지지 않는 것.... png 이미지는 정상적으로 보여진다. 원인을 찾아보는 도중 print(QtGui.QImageReader.supportedImageFormats()) 를 통해 QPixmap에서 불러와지는 이미지 포맷 형식을 알아보니,,, jpg가 없었다. 지원하는 이미지 포맷은 다음과 같다. [PyQt5.QtCore.QByteArray(b'bmp'), PyQt5.QtCore.QByteArray(b'pbm'), PyQt5.QtCore.QByteArray(b'pgm'), PyQt5.QtCore.QByteArray(b'png'), PyQt5.QtCore.QByteArray(b'xpm'), PyQ..