양지수

Merge branch 'master' into 'master'

Master



See merge request !1
Showing 721 changed files with 1991 additions and 0 deletions
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
import warnings
#########5/23일작성중 #########
warnings.simplefilter(("ignore"))
import openpyxl
import pandas as pd
####### [날짜, 뉴스단어 한개] 구성 만드는 파일 차트 분석 시 count함수 이욜 할 때 참조 자료
# ex)hmm뉴스키워드날짜뉴스모으고특수삭제.xlsx 파일 넣음<- DayNewsMerge.py 중간에 주석처리 된 부분 해제하고 결과 얻기
Stockfilename = input("키워드파일이름입력:")
fileStock = "C:/Users/yangj/PycharmProjects/pythonProject1/샘플/" + Stockfilename + ".xlsx"
Stockfile = openpyxl.load_workbook(fileStock) # 파일이름입력
stock_ws = Stockfile.active
Stock_data = [] # list 타입
date=[]
i = 0
for row in stock_ws.rows:
Stock_data.append([])
date.append(row[1].value)
for cell in row:
if cell.value != None :
Stock_data[i].append(cell.value)
i += 1
del Stock_data[0]
del date[0]
for i in range(len(Stock_data)):
del Stock_data[i][0] #각 열의 첫번째 행 삭제
for i in range(len(Stock_data)):
del Stock_data[i][0] #각 열의 첫번째 행 삭제
print(Stock_data)
print(date)
a=[] #
print(len(date),len(Stock_data))
for j in range(len(Stock_data)):
for k in range(len(Stock_data[j])):
a.append([date[j],Stock_data[j][k]])
print(a)
df_SourTar = pd.DataFrame(a)
df_SourTar.to_excel(Stockfilename+'countif.xlsx',sheet_name='sheet1')
\ No newline at end of file
import pandas as pd
source = {
'학년': [1, 2, 1, 3, 4],
'성별': ['남자', '여자', '남자', '여자', '남자'],
'국어': [98, 88, 92, 63, 120],
'영어': [88, 90, 70, 60, 50],
'수학': [64, 62, None, 31, None],
'과학': [None, 72, None, 70, 88]
}
df = pd.DataFrame(source)
df1=df[(df['성별']!='남자')].index
df2=df.drop(df1)
print(df)
print("---------")
print(df2)
import warnings
warnings.simplefilter(("ignore"))
import openpyxl
import pandas as pd
# 000_KNU_New_Vdic2.xlsx 파일 넣기
Stockfilefolder = input("종목시세폴더입력: ")
Stockfilename = input("시세파일이름입력:")
fileStock = "C:/Users/yangj/PycharmProjects/pythonProject1/뉴스키워드/" + Stockfilefolder + "/" + Stockfilename + ".xlsx"
Stockfile = openpyxl.load_workbook(fileStock) # 파일이름입력
stock_ws = Stockfile.active
Stock_data = [] # list 타입
i = 0
for row in stock_ws.rows:
Stock_data.append([])
for cell in row:
if cell.value != None:
Stock_data[i].append(cell.value)
i += 1
del Stock_data[0]
for i in range(len(Stock_data)):
del Stock_data[i][0]
#print(Stock_data)
vert_p = [] # 수직 중복 삭제
for i in range(len(Stock_data)):
vert_p.append([])
for j in range(len(Stock_data[i])):
vert_p[i].append(Stock_data[i][j]) # 단어만 넣기
print(vert_p)
vert_p.sort(key=lambda x: x[0]) # 단어 기준으로 정렬
for i in range(len(vert_p) - 2): # 단어 비교해서 같으면 누적, 다르면 값 바꾸기
for j in range(i + 1, len(vert_p)):
if vert_p[i][0] == vert_p[j][0] :
vert_p[i][1] += vert_p[j][1]
vert_p[j] = ['0', 0]
if str.isalnum(vert_p[i][0]) == False:
vert_p[i] =['0', 0]
vert_p = [i for i in vert_p if not '0' in i] # '0'들어간 열 제거
df_ver = pd.DataFrame(vert_p)
df_ver.to_excel(Stockfilename + ' Stock_dictionary2.xlsx', sheet_name='sheet1')
####사전 완성####
File mode changed
import warnings
warnings.simplefilter(("ignore"))
import openpyxl
import pandas as pd
Stockfilefolder = input("종목시세폴더입력: ")
Stockfilename = input("시세파일이름입력:")
fileStock = "C:/Users/yangj/PycharmProjects/pythonProject1/종목별시세/" + Stockfilefolder + "/" + Stockfilename + ".xlsx"
Stockfile = openpyxl.load_workbook(fileStock) # 파일이름입력
stock_ws = Stockfile.active
Stock_data = [] # list 타입
i = 0
for row in stock_ws.rows:
Stock_data.append([])
for cell in row:
if cell.value != None:
Stock_data[i].append(cell.value)
i += 1
del Stock_data[0]
for i in range(len(Stock_data)):
del Stock_data[i][0] # 대비 삭제
#print(Stock_data)
vert_p = [] # 수직 중복 삭제
for i in range(len(Stock_data)):
vert_p.append([])
for j in range(len(Stock_data[i])):
vert_p[i].append(Stock_data[i][j]) # 단어만 넣기
print(vert_p)
vert_p.sort(key=lambda x: x[0]) # 단어 기준으로 정렬
for i in range(len(vert_p) - 2): # 단어 비교해서 같으면 누적 다르면 값 바꾸기
for j in range(i + 1, len(vert_p)):
if vert_p[i][0] == vert_p[j][0] :
vert_p[i][1] += vert_p[j][1]
vert_p[j] = ['0', 0]
if str.isalnum(vert_p[i][0]) == False:
vert_p[i] =['0', 0]
vert_p = [i for i in vert_p if not '0' in i] # '0'들어간 열 제거
df_ver = pd.DataFrame(vert_p)
df_ver.to_excel(Stockfilename + ' Stock_dictionary2.xlsx', sheet_name='sheet1')
# **뉴스 키워드 노출 빈도수에 따른 기업 주가 영향 분석**
---------------------------------------------------
----------------------------------------------------
## **지도교수님**
* 한치근 교수님
## **팀원**
* 2017104003 컴퓨터공학과 양지수
* 2017104039 컴퓨터공학과 한서흔
---
## **개발일정**
* 2021.03.09~2021.03.22 데이터 수집
* 2021.03.23~2021.04.19 자연어 처리,중간보고서 작성
* 2021.04.20~2021.05.04 감성사전 분석 및 특화 사전 제작
* 2021.05.05~ 중심성 분석 및 최종 결과 제작
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
import warnings
warnings.simplefilter(("ignore"))
import konlpy
from konlpy.tag import *
import openpyxl
import pandas as pd
from math import log10
import numpy as np
#형태소분석라이브러리
#okt = Okt()
hannanum = Hannanum()
#filename= input("분석할 파일이름 입력:") #파일명
filefolder = input("종목폴더입력: ")
filename=input("파일이름입력:")
filepos = "C:/Users/yangj/PycharmProjects/pythonProject1/뉴스크롤링/"+filefolder+"/" + filename + ".xlsx"
kfile = openpyxl.load_workbook(filepos)#파일이름입력
sheet=kfile.worksheets[0]#sheet1에 있는 데이터 가죠오기
#print(sheet)
data=[]
for row in sheet.rows: #data에 크롤링한 뉴스 제목들 저장
data.append(
row[1].value
)
#print(data)
#print(type(data[1])) #str
newData2=[]
#print(newData)
for i in range(len(data)-1):
newData2.append(hannanum.nouns(data[i+1])) #명사만 추출hannanum가 okt보다 성능좋음
#print(newData2)
newData3=[]
for i in range(len(newData2)):
newData3.append([])
for j in newData2[i]:
if any(map(str.isdigit,j))==False and len(j)>1: #추출한 결과가 숫자포함이거나 한글자 인것 제외
newData3[i].append(j)
#print(newData3)
#print(type(newData2))#newData2 데이터 형식은 list
#df= pd.DataFrame.from_records(newData3)#newData3 dataframe으로 변환
#df.to_excel(filename+'_명사추출_숫자제외'+'.xlsx') #파일명의 엑셀로 변환
#TF-IDF함수 시작
def f(t, d): # 엑셀 d 안에 있는 t 빈도 세기
return d.count(t)
def tf(t, d): #tf(t,d)증가빈도 공식 적용
return 0.5 + 0.5*f(t,d)/max([f(w,d) for w in d])
def idf(t, D): #역문서 빈도 공식 적용
numerator = len(D) #문서 집합에 포함 된 문서 수
denominator = 1 + len([ True for d in D if t in d]) #1더해서 0되는 것 방지
return log10(numerator/denominator)
def tfidf(t, d, D):
return tf(t,d)*idf(t, D)
def tfidfScorer(D):
result = []
for d in D:
result.append([(t, tfidf(t, d, D)) for t in d] )
return result
#newData3는 명사추출을 통해 분리되어있음(이미 split상태)
if __name__ == '__main__':
corpus=[]
for i in range(len(newData3)):
corpus.append(newData3[i])
TfIf=[] #결과저장
for i, result in enumerate(tfidfScorer(corpus)):
#print('====== document[%d] ======' % i)
#print(result)
TfIf.append(result)
print(TfIf)#TFIF는 (단어,가중치) 조합으로 저장
for i in range(len(TfIf)-1):
TfIf[i].sort(key=lambda x:x[1], reverse=True) #가중치기준 내림차순 정렬
print(TfIf)
onlynouns = []
for i in range(len(TfIf)):
onlynouns.append([])
for j in range(len(TfIf[i])):
for k in range(len(TfIf[i][j])):
if k%2==0:
onlynouns[i].append(TfIf[i][j][k])
print(onlynouns)
#df= pd.DataFrame.from_records(TfIf)#TfIf dataframe으로 변환
#df.to_excel(filename+'_가중치추출_내림정렬'+'.xlsx')
<component name="InspectionProjectProfileManager">
<settings>
<option name="USE_PROJECT_PROFILE" value="false" />
<version value="1.0" />
</settings>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.7" project-jdk-type="Python SDK" />
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/knu.iml" filepath="$PROJECT_DIR$/.idea/knu.iml" />
</modules>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
<mapping directory="$PROJECT_DIR$/KnuSentiLex" vcs="Git" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="c0303638-0fd2-416a-ba15-34825add524a" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/../ 2021-5-8 21시 33분 12초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../ 2021-5-8 21시 37분 30초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../ 2021-5-8 21시 6분 9초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../ 2021-5-8 22시 48분 54초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../ 2021-5-9 10시 55분 12초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../ 2021-5-9 12시 15분 22초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/inspectionProfiles/profiles_settings.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/knu.iml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/modules.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/vcs.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../mecab_python-0.996_ko_0.9.2_msvc-cp37-cp37m-win_amd64.whl" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../venv/Lib/site-packages/MeCab.py" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../venv/Lib/site-packages/_MeCab.cp37-win_amd64.pyd" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../venv/Lib/site-packages/libmecab.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../venv/Lib/site-packages/mecab_python-0.996_ko_0.9.2_msvc.dist-info/INSTALLER" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../venv/Lib/site-packages/mecab_python-0.996_ko_0.9.2_msvc.dist-info/METADATA" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../venv/Lib/site-packages/mecab_python-0.996_ko_0.9.2_msvc.dist-info/RECORD" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../venv/Lib/site-packages/mecab_python-0.996_ko_0.9.2_msvc.dist-info/REQUESTED" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../venv/Lib/site-packages/mecab_python-0.996_ko_0.9.2_msvc.dist-info/WHEEL" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../venv/Lib/site-packages/mecab_python-0.996_ko_0.9.2_msvc.dist-info/direct_url.json" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../venv/Lib/site-packages/mecab_python-0.996_ko_0.9.2_msvc.dist-info/top_level.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/코스피/코스피10월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/코스피/코스피11월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/코스피/코스피12월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/항공사/대한항공/2021-4-14 15시 32분 35초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/항공사/대한항공/2021-4-14 15시 40분 14초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/항공사/대한항공/2021-4-14 15시 47분 35초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/항공사/대한항공/2021-4-14 16시 13분 52초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/항공사/대한항공/2021-4-14 16시 21분 37초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/항공사/대한항공/2021-4-14 16시 32분 13초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/항공사/대한항공/대한항공10월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/항공사/대한항공/대한항공11월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/항공사/대한항공/대한항공12월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/항공사/대한항공/대한항공1월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/항공사/대한항공/대한항공2월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/항공사/대한항공/대한항공3월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/해운사/hmm/hmm10월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/해운사/hmm/hmm11월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/해운사/hmm/hmm12월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/해운사/hmm/hmm1월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/해운사/hmm/hmm2월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/해운사/hmm/hmm3월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/2021-4-16 10시 32분 58초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/2021-4-16 10시 39분 27초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/2021-4-16 10시 48분 36초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/2021-4-16 10시 56분 54초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/2021-4-16 10시 7분 43초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/2021-4-16 11시 3분 9초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/2021-4-16 11시 9분 40초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/2021-4-16 9시 45분 49초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/2021-4-16 9시 53분 0초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/2021-4-16 9시 58분 44초 merging.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/금호석유10월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/금호석유11월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/금호석유12월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/금호석유1월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/금호석유2월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/금호석유/금호석유3월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/롯데케미칼/롯데케미칼10월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/롯데케미칼/롯데케미칼11월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/롯데케미칼/롯데케미칼12월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/롯데케미칼/롯데케미칼1월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/롯데케미칼/롯데케미칼2월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스크롤링/화학/롯데케미칼/롯데케미칼3월.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/고려아연/고려아연10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/고려아연/고려아연11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/고려아연/고려아연12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/고려아연/고려아연1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/고려아연/고려아연2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/고려아연/고려아연3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/금호석유/금호석유10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/금호석유/금호석유11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/금호석유/금호석유12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/금호석유/금호석유1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/금호석유/금호석유2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/금호석유/금호석유3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/기업은행/기업은행10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/기업은행/기업은행11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/기업은행/기업은행12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/기업은행/기업은행1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/기업은행/기업은행2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/기업은행/기업은행3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/대한항공/대한항공10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/대한항공/대한항공11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/대한항공/대한항공12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/대한항공/대한항공1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/대한항공/대한항공2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/대한항공/대한항공3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/롯데케미칼/롯데케미칼10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/롯데케미칼/롯데케미칼11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/롯데케미칼/롯데케미칼12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/롯데케미칼/롯데케미칼1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/롯데케미칼/롯데케미칼2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/롯데케미칼/롯데케미칼3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/미래에셋증권/미래에셋증권10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/미래에셋증권/미래에셋증권11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/미래에셋증권/미래에셋증권12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/미래에셋증권/미래에셋증권1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/미래에셋증권/미래에셋증권2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/미래에셋증권/미래에셋증권3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성SDS/삼성SDS10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성SDS/삼성SDS11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성SDS/삼성SDS12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성SDS/삼성SDS1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성SDS/삼성SDS2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성SDS/삼성SDS3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성생명/삼성생명10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성생명/삼성생명11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성생명/삼성생명12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성생명/삼성생명1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성생명/삼성생명2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성생명/삼성생명3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성전기/삼성전기10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성전기/삼성전기11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성전기/삼성전기12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성전기/삼성전기1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성전기/삼성전기2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성전기/삼성전기3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성화재/삼성화재10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성화재/삼성화재11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성화재/삼성화재12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성화재/삼성화재1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성화재/삼성화재2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/삼성화재/삼성화재3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/아모레퍼시픽/아모레퍼시픽10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/아모레퍼시픽/아모레퍼시픽11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/아모레퍼시픽/아모레퍼시픽12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/아모레퍼시픽/아모레퍼시픽1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/아모레퍼시픽/아모레퍼시픽2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/아모레퍼시픽/아모레퍼시픽3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/우리금융지주/우리금융지주10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/우리금융지주/우리금융지주11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/우리금융지주/우리금융지주12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/우리금융지주/우리금융지주1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/우리금융지주/우리금융지주2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/우리금융지주/우리금융지주3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/포스코케미칼/포스코케미칼10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/포스코케미칼/포스코케미칼11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/포스코케미칼/포스코케미칼12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/포스코케미칼/포스코케미칼1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/포스코케미칼/포스코케미칼2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/포스코케미칼/포스코케미칼3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/하나금융지주/하나금융지주10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/하나금융지주/하나금융지주11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/하나금융지주/하나금융지주12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/하나금융지주/하나금융지주1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/하나금융지주/하나금융지주2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/하나금융지주/하나금융지주3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/하이브/하이브10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/하이브/하이브11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/하이브/하이브12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/하이브/하이브1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/하이브/하이브2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/하이브/하이브3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한국전력/한국전력10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한국전력/한국전력11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한국전력/한국전력12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한국전력/한국전력1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한국전력/한국전력2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한국전력/한국전력3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한국조선해양/한국조선해양10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한국조선해양/한국조선해양11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한국조선해양/한국조선해양12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한국조선해양/한국조선해양1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한국조선해양/한국조선해양2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한국조선해양/한국조선해양3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한온시스템/한온시스템10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한온시스템/한온시스템11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한온시스템/한온시스템12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한온시스템/한온시스템1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한온시스템/한온시스템2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한온시스템/한온시스템3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한화솔루션/한화솔루션10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한화솔루션/한화솔루션11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한화솔루션/한화솔루션12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한화솔루션/한화솔루션1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한화솔루션/한화솔루션2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/한화솔루션/한화솔루션3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/현대글로비스/현대글로비스10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/현대글로비스/현대글로비스11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/현대글로비스/현대글로비스12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/현대글로비스/현대글로비스1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/현대글로비스/현대글로비스2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/현대글로비스/현대글로비스3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/현대제철/현대제철10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/현대제철/현대제철11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/현대제철/현대제철12월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/현대제철/현대제철1월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/현대제철/현대제철2월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../뉴스키워드/현대제철/현대제철3월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/hmm/data_1640_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/hmm/data_1723_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/hmm/data_1758_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/hmm/data_1809_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/hmm/data_3042_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/hmm/hmm3월시세.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/kt/data_3605_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/kt/data_3618_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/kt/data_3723_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/kt/data_3743_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/kt/data_3804_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/kt/data_3846_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/lg디스플레이/data_3955_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/lg디스플레이/data_4205_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/lg디스플레이/data_4221_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/lg디스플레이/data_4237_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/lg디스플레이/data_4255_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/lg디스플레이/data_4315_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/s-oil/data_5307_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/s-oil/data_5319_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/s-oil/data_5343_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/s-oil/data_5406_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/s-oil/data_5420_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/s-oil/data_5440_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/sk바이오팜/data_4346_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/sk바이오팜/data_4402_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/sk바이오팜/data_5047_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/sk바이오팜/data_5141_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/sk바이오팜/data_5231_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/sk바이오팜/data_5246_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/고려아연/data_5614_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/고려아연/data_5624_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/고려아연/data_5637_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/고려아연/data_5649_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/고려아연/data_5705_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/고려아연/data_5716_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/금호석유/data_0008_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/금호석유/data_5741_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/금호석유/data_5753_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/금호석유/data_5807_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/금호석유/data_5845_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/금호석유/data_5958_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/기업은행/data_0030_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/기업은행/data_0040_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/기업은행/data_0049_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/기업은행/data_0106_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/기업은행/data_0115_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/기업은행/data_0138_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/대한항공/data_1126_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/대한항공/data_1136_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/대한항공/data_1146_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/대한항공/data_1209_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/대한항공/data_1219_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/대한항공/data_1230_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/롯데케미칼/data_1250_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/롯데케미칼/data_1306_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/롯데케미칼/data_1317_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/롯데케미칼/data_1327_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/롯데케미칼/data_1356_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/롯데케미칼/data_1405_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/미래에셋증권/data_1430_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/미래에셋증권/data_1439_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/미래에셋증권/data_1448_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/미래에셋증권/data_1457_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/미래에셋증권/data_1507_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/미래에셋증권/data_1515_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성SDS/data_1805_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성SDS/data_1815_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성SDS/data_1928_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성SDS/data_2225_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성SDS/data_2234_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성SDS/data_2243_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성생명/data_2306_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성생명/data_2318_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성생명/data_2327_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성생명/data_2336_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성생명/data_2345_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성생명/data_2356_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성전기/data_2422_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성전기/data_2431_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성전기/data_2439_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성전기/data_2449_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성전기/data_2459_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성전기/data_2509_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성화재/data_2541_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성화재/data_2550_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성화재/data_2853_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성화재/data_2908_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성화재/data_3029_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/삼성화재/data_3039_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/아모레퍼시픽/data_3154_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/아모레퍼시픽/data_3204_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/아모레퍼시픽/data_3220_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/아모레퍼시픽/data_3230_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/아모레퍼시픽/data_3240_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/아모레퍼시픽/data_3249_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/우리금융지주/data_3328_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/우리금융지주/data_3907_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/우리금융지주/data_3916_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/우리금융지주/data_3924_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/우리금융지주/data_3931_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/우리금융지주/data_3942_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/포스코케미칼/data_4004_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/포스코케미칼/data_4014_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/포스코케미칼/data_4023_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/포스코케미칼/data_4031_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/포스코케미칼/data_4040_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/포스코케미칼/data_4049_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/하나금융지주/data_4106_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/하나금융지주/data_4117_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/하나금융지주/data_4127_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/하나금융지주/data_4137_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/하나금융지주/data_4145_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/하나금융지주/data_4153_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/하이브/data_4212_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/하이브/data_4227_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/하이브/data_4257_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/하이브/data_4311_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/하이브/data_4321_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/하이브/data_4331_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한국전력/data_4350_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한국전력/data_4400_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한국전력/data_4408_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한국전력/data_4417_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한국전력/data_4425_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한국전력/data_4434_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한국조선해양/data_4458_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한국조선해양/data_4507_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한국조선해양/data_4516_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한국조선해양/data_4523_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한국조선해양/data_4532_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한국조선해양/data_4555_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한온시스템/data_4614_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한온시스템/data_4623_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한온시스템/data_4639_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한온시스템/data_4649_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한온시스템/data_4658_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한온시스템/data_4708_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한화솔루션/data_5515_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한화솔루션/data_5524_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한화솔루션/data_5534_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한화솔루션/data_5543_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한화솔루션/data_5550_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/한화솔루션/data_5600_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/현대글로비스/data_5631_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/현대글로비스/data_5639_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/현대글로비스/data_5647_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/현대글로비스/data_5658_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/현대글로비스/data_5708_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/현대글로비스/data_5717_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/현대제철/data_5734_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/현대제철/data_5742_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/현대제철/data_5756_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/현대제철/data_5804_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/현대제철/data_5814_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../종목별시세/현대제철/data_5824_20210419.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../중간보고서.pdf" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../코스피10월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../코스피11월뉴스키워드.xlsx" afterDir="false" />
<change afterPath="$PROJECT_DIR$/../코스피12월뉴스키워드.xlsx" afterDir="false" />
<change beforePath="$PROJECT_DIR$/../hmm1월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../hmm1월_가중치추출.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../hmm1월_명사추출.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../hmm2월_명사추출.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../hmm2월_명사추출_숫자제외.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../knp.py" beforeDir="false" afterPath="$PROJECT_DIR$/../knp.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/hmm/hmm10월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/hmm/hmm11월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/hmm/hmm12월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/hmm/hmm1월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/hmm/hmm2월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/hmm/hmm3월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/kt&amp;g(보류)/2021-4-15 16시 49분 6초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/kt&amp;g(보류)/2021-4-15 17시 5분 46초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/2021-4-16 10시 32분 58초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/2021-4-16 10시 39분 27초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/2021-4-16 10시 48분 36초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/2021-4-16 10시 56분 54초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/2021-4-16 10시 7분 43초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/2021-4-16 11시 3분 9초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/2021-4-16 11시 9분 40초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/2021-4-16 9시 45분 49초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/2021-4-16 9시 53분 0초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/2021-4-16 9시 58분 44초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/금호석유10월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/금호석유11월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/금호석유12월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/금호석유1월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/금호석유2월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/금호석유/금호석유3월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/대한항공/2021-4-14 15시 32분 35초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/대한항공/2021-4-14 15시 40분 14초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/대한항공/2021-4-14 15시 47분 35초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/대한항공/2021-4-14 16시 13분 52초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/대한항공/2021-4-14 16시 21분 37초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/대한항공/2021-4-14 16시 32분 13초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/대한항공/대한항공10월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/대한항공/대한항공11월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/대한항공/대한항공12월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/대한항공/대한항공1월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/대한항공/대한항공2월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/대한항공/대한항공3월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/롯데케미칼/롯데케미칼10월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/롯데케미칼/롯데케미칼11월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/롯데케미칼/롯데케미칼12월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/롯데케미칼/롯데케미칼1월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/롯데케미칼/롯데케미칼2월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/롯데케미칼/롯데케미칼3월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/2021-4-14 17시 31분 28초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/2021-4-14 17시 49분 31초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/2021-4-14 17시 57분 40초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/2021-4-14 18시 0분 54초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/2021-4-14 18시 32분 49초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/2021-4-14 18시 48분 0초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/2021-4-14 18시 6분 26초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/2021-4-14 19시 19분 23초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/2021-4-14 19시 25분 56초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/2021-4-14 19시 3분 23초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/하이브10월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/하이브11월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/하이브12월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/하이브1월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/하이브2월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/빅히트/하이브3월.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/신한지주/2021-4-16 18시 34분 49초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/신한지주/2021-4-16 18시 50분 30초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/신한지주/2021-4-16 18시 57분 35초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/신한지주/2021-4-16 19시 12분 52초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/신한지주/2021-4-16 19시 22분 8초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/신한지주/2021-4-16 19시 30분 6초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/신한지주/2021-4-16 19시 4분 15초 merging.xlsx" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../뉴스크롤링/신한지주/신한지주3월.xlsx" beforeDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="Git.Settings">
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$/KnuSentiLex" />
</component>
<component name="ProjectId" id="1sKE1vqX6hUM7q0Ohx8nPpqQpTo" />
<component name="ProjectLevelVcsManager" settingsEditedManually="true" />
<component name="ProjectViewState">
<option name="hideEmptyMiddlePackages" value="true" />
<option name="showLibraryContents" value="true" />
</component>
<component name="PropertiesComponent">
<property name="RunOnceActivity.OpenProjectViewOnStart" value="true" />
<property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="last_opened_file_path" value="$PROJECT_DIR$" />
<property name="node.js.detected.package.eslint" value="true" />
<property name="node.js.detected.package.tslint" value="true" />
<property name="node.js.path.for.package.eslint" value="project" />
<property name="node.js.path.for.package.tslint" value="project" />
<property name="node.js.selected.package.eslint" value="(autodetect)" />
<property name="node.js.selected.package.tslint" value="(autodetect)" />
</component>
<component name="RunManager">
<configuration name="knusl" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
<module name="knu" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/KnuSentiLex" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/KnuSentiLex/knusl.py" />
<option name="PARAMETERS" value="" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
<recent_temporary>
<list>
<item itemvalue="Python.knusl" />
</list>
</recent_temporary>
</component>
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="c0303638-0fd2-416a-ba15-34825add524a" name="Default Changelist" comment="" />
<created>1620612669345</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1620612669345</updated>
<workItem from="1620612670534" duration="1478000" />
</task>
<servers />
</component>
<component name="TypeScriptGeneratedFilesManager">
<option name="version" value="3" />
</component>
<component name="com.intellij.coverage.CoverageDataManagerImpl">
<SUITE FILE_PATH="coverage/knu$knusl.coverage" NAME="knusl Coverage Results" MODIFIED="1620612704306" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/KnuSentiLex" />
</component>
</project>
\ No newline at end of file
import warnings
warnings.simplefilter(("ignore"))
import openpyxl
import pandas as pd
#######Gephi에 사용할 edge파일 만들기 전에 필요한 자료 만드는 과정
####6개월치 키워드 합친 키워드 파일 넣기
Stockfilename = input("키워드파일이름입력:")
fileStock = "C:/Users/yangj/PycharmProjects/pythonProject1/샘플/" + Stockfilename + ".xlsx"
Stockfile = openpyxl.load_workbook(fileStock) # 파일이름입력
stock_ws = Stockfile.active
Stock_data = [] # list 타입
date=[]
i = 0
for row in stock_ws.rows:
Stock_data.append([])
date.append(row[1].value)
for cell in row:
if cell.value != None:
Stock_data[i].append(cell.value)
i += 1
del Stock_data[0] #첫번째 의미없는 열 삭제
del date[0]
for i in range(len(Stock_data)):
del Stock_data[i][0] #각 열의 첫번째 행 삭제
for i in range(len(Stock_data)):
del Stock_data[i][0] #각 열의 날짜 행 삭제
Tdata=[]
for x in range(len(Stock_data)):
Tdata.append([])
for y in range(len(Stock_data[x])):
if str.isalnum(Stock_data[x][y]) == True:
Tdata[x].append(Stock_data[x][y])
result = { '날짜':date, '단어':Tdata }
df = pd.DataFrame(result)
#print(df)
list_df=df.values.tolist() #dataframe list로 변경
print(list_df)
#print(list_df[0][0]) 날짜 2021.01.01.
new_date = [] # 날짜 중복 삭제
for v in date:
if v not in new_date:
new_date.append(v)
#print(new_date)
Setlist =[]# 날짜별 키워드 넣기
for v in range(len(new_date)):
Setlist.append([])
Setlist[v].append(new_date[v])
for i in range(len(list_df)):
for j in range(len(list_df[i][1])):
if new_date[v] == list_df[i][0] :
Setlist[v].append(list_df[i][1][j])
print(Setlist)
df_ver= pd.DataFrame(Setlist)
#df_ver.to_excel(Stockfilename+' 날짜뉴스모으고특수삭제.xlsx',sheet_name='sheet1')
SourceTarget=[]
for i in range(len(list_df)):
SourceTarget.append([])
for j in range(len(list_df[i][1])-1):
SourceTarget.append([list_df[i][0],list_df[i][1][j],list_df[i][1][j+1],1])
print(SourceTarget)
SourceTarget = [v for v in SourceTarget if v]
df_SourTar = pd.DataFrame(SourceTarget)
df_SourTar.to_excel(Stockfilename+'Edge3.xlsx',sheet_name='sheet1')
\ No newline at end of file
# KNU 한국어 감성사전
# 작성자 : 온병원, 박상민, 나철원
# 소속 : 군산대학교 소프트웨어융합공학과 Data Intelligence Lab
# 홈페이지 : dilab.kunsan.ac.kr
# 작성일 : 2018.05.14
# 뜻풀이 데이터 출처 : https://github.com/mrchypark/stdkor
# 신조어 데이터 출처 : https://ko.wikipedia.org/wiki/%EB%8C%80%ED%95%9C%EB%AF%BC%EA%B5%AD%EC%9D%98_%EC%9D%B8%ED%84%B0%EB%84%B7_%EC%8B%A0%EC%A1%B0%EC%96%B4_%EB%AA%A9%EB%A1%9D
# 이모티콘 데이터 출처: https://ko.wikipedia.org/wiki/%EC%9D%B4%EB%AA%A8%ED%8B%B0%EC%BD%98
# SentiWordNet_3.0.0_20130122 데이터 출처 : http://sentiwordnet.isti.cnr.it/
# SenticNet-5.0 데이터 출처 : http://sentic.net/
# 감정단어사전0603 데이터 출처 : http://datascience.khu.ac.kr/board/bbs/board.php?bo_table=05_01&wr_id=91
# 김은영, “국어 감정동사 연구”, 2004.02, 학위논문(박사) - 전남대학교 국어국문학과 대학원
#-*-coding:utf-8-*-
import collections
import json
import warnings
warnings.simplefilter(("ignore"))
import openpyxl
import pandas as pd
import re
from datetime import datetime
############종목 감성 판단 ex)hmm뉴스키워드.xlsx 파일 넣는 과정
class KnuSL():
def data_list(wordname):
with open('KnuSentiLex/data/SentiWord_info.json', encoding='utf-8-sig', mode='r') as f:
data = json.load(f)
result = [0,0]
for i in range(0, len(data)):
if data[i]['word'] == wordname:
result.pop()
result.pop()
result.append(data[i]['word_root'])
result.append(int(data[i]['polarity']))
r_word = result[0] #어근
s_word = result[1] #극성
return s_word
if __name__ == "__main__":
ksl = KnuSL
print("\nKNU 한국어 감성사전입니다~ :)")
print("사전에 단어가 없는 경우 결과가 None으로 나타납니다!!!")
print("종료하시려면 #을 입력해주세요!!!")
print("-2:매우 부정, -1:부정, 0:중립 or Unkwon, 1:긍정, 2:매우 긍정")
print("\n")
#########
Newsfilefolder = input("종목폴더입력: ")
Newsfilename=input("파일이름입력:")
Newsfilepos = "C:/Users/yangj/PycharmProjects/pythonProject1/뉴스키워드/"+Newsfilefolder+"/" + Newsfilename + ".xlsx"
Newsfile = openpyxl.load_workbook(Newsfilepos)#파일이름입력
ws=Newsfile.active
data=[]
date=[]
i=0
for row in ws.rows:
data.append([])
date.append(row[1].value)
for cell in row:
if cell.value != None:
data[i].append(cell.value)
i += 1
del data[0] #첫번째 의미없는 열 삭제
del date[0]
for i in range(len(data)):
del data[i][0] #각 열의 첫번째 행 삭제
for i in range(len(data)):
del data[i][0] #각 열의 날짜 행 삭제
KNUdata=[]
Tdata=[]
for x in range(len(data)):
KNUdata.append([])
Tdata.append([])
for y in range(len(data[x])):
KNUdata[x].append(ksl.data_list(data[x][y]))
Tdata[x].append([data[x][y], KNUdata[x][y]])
result = { '날짜':date, '단어, 극성':Tdata }
df = pd.DataFrame(result)
#print(df)
list_df=df.values.tolist() #dataframe list로 변경
#print(list_df)
#print(list_df[0][0]) 날짜 2021.01.01.
new_date = [] # 날짜 중복 삭제
for v in date:
if v not in new_date:
new_date.append(v)
#print(new_date)
Setlist =[]# 날짜별 키워드 넣기
for v in range(len(new_date)):
Setlist.append([])
Setlist[v].append(new_date[v])
for i in range(len(list_df)):
for j in range(len(list_df[i][1])):
if new_date[v] == list_df[i][0]:
Setlist[v].append(list_df[i][1][j])
print(Setlist)
print(Setlist[0][0]) #2021.01.01
print(type(Setlist[0][0]))
print(Setlist[0][0].split('-'))
print(Setlist[0][1][1]) #극성 0
print(type(Setlist[0][1][1])) #극성 모든 타입 int
#print(list_df[0][1][0]) 키워드와 극성 ['HMM…"체질개선해', 'X']
#print(list_df[0][1][0][1]) 극성 x
#print(list_df[0][0].split('.')[:3]) ['2021', '01', '01']
#df.to_excel(Newsfilename+' KNU.xlsx',sheet_name='sheet1')
Stockfilefolder = input("종목시세폴더입력: ")
Stockfilename=input("시세파일이름입력:")
fileStock = "C:/Users/yangj/PycharmProjects/pythonProject1/종목별시세/"+Stockfilefolder+"/" + Stockfilename + ".xlsx"
Stockfile = openpyxl.load_workbook(fileStock)#파일이름입력
stock_ws=Stockfile.active
Stock_data=[] #list 타입
i=0
for row in stock_ws.rows:
Stock_data.append([])
for cell in row:
if cell.value != None:
Stock_data[i].append(cell.value)
i += 1
del Stock_data[0]
for i in range(len(Stock_data)):
del Stock_data[i][2] # 대비 삭제
for i in range(len(Stock_data)):
del Stock_data[i][7] #거래대금 삭제
for i in range(len(Stock_data)):
del Stock_data[i][7] #시가 총액 삭제
for i in range(len(Stock_data)):
del Stock_data[i][7] #상장주식 수 삭제 / 결과:'일자', '종가', '등락률', '시가', '고가', '저가', '거래량'
#print(Stock_data)
def Calpercentage(a,b): #시초가 대비 고점/저점 비율
return abs(a-b)/a*100
####아래로 수정 필요 (미완성)####
i=0
for k in range(len(Setlist)):
if( Stock_data[i][0].split('/') == Setlist[k][0].split('-')): # 날짜 비교 날짜가 같다면
if Calpercentage(Stock_data[i][3],Stock_data[i][4]) > 2 : #당일 시가 대비 고가가 2퍼 높을때
for j in range(1,len(Setlist[k])):
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = 1
else:
Setlist[0][j][1] += 1
elif Calpercentage(Stock_data[i][3],Stock_data[i][5]) < -2 : #당일 시가 대비 저가가 2퍼 낮을 때
for j in range(1,len(Setlist[k])):
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = -1
else:
Setlist[0][j][1] -= 1
else:
if Stock_data[i+1][2] > 0: # 다음날 주가 등락률이 양수면
for j in range(1,len(Setlist[k])): #어제뉴스는 호재 취급
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = 1
else:
Setlist[k][j][1] += 1
elif Stock_data[i+1][2] < 0:
for j in range(1,len(Setlist[k])): # 음수면 어제 뉴스는 악재 취급
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = -1
else:
Setlist[k][j][1] -= 1
i+=1
else:
if Calpercentage(Stock_data[i][3], Stock_data[i][4]) > 2: # 당일 시가 대비 고가가 2퍼 높을때
for j in range(1, len(Setlist[k])):
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = 1
else:
Setlist[k][j][1] += 1
elif Calpercentage(Stock_data[i][3], Stock_data[i][5]) < -2: # 당일 시가 대비 저가가 2퍼 낮을 때
for j in range(1, len(Setlist[k])):
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = -1
else:
Setlist[k][j][1] -= 1
else:
if Stock_data[i + 1][2] > 0: # 다음날 주가 등락률이 양수면
for j in range(1, len(Setlist[k])): # 어제뉴스는 호재 취급
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = 1
else:
Setlist[k][j][1] += 1
elif Stock_data[i + 1][2] < 0:
for j in range(1, len(Setlist[k])): # 음수면 어제 뉴스는 악재 취급
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = -1
else:
Setlist[k][j][1] -= 1
i+=1 #<이거 삭제서 hmm한번 더 돌려보기
print(Setlist)
#df_Setlist = pd.DataFrame(Setlist)
#df_Setlist.to_excel(Stockfilename+' KNU_New.xlsx',sheet_name='sheet1')
Setlist_w = []
for i in range(len(Setlist)):
Setlist_w.append([])
for j in range(1, len(Setlist[i])):
Setlist_w[i].append(Setlist[i][j][0]) # 극성 제외 단어만 추출
counter = {}
for i in range(len(Setlist_w)):
counter[i] = collections.Counter(Setlist_w[i]) # 누적치
for i in range(len(Setlist_w)):
Setlist_w[i] = list(zip(counter[i].keys(), counter[i].values())) # 튜플 리스트화 [(값, 값)]
Plist = []
for i in range(len(Setlist_w)):
Plist.append([])
for j in range(len(Setlist_w[i])):
Plist[i].append(list(Setlist_w[i][j])) # 튜플 -> 리스트화 [[값, 값]]
for i in range(len(Plist)):
for j in range(len(Plist[i])):
Plist[i][j][1] = 0 # 극성 0으로 초기화
for i in range(len(Setlist)):
for j in range(1, len(Setlist[i])):
for h in range(len(Plist[i])):
if Setlist[i][j][0] == Plist[i][h][0]:
Plist[i][h][1] += Setlist[i][j][1] #누적치
vert_p=[] #수직 중복 삭제
for i in range(len(Plist)):
for j in range(len(Plist[i])):
vert_p.append(Plist[i][j]) #단어만 넣기
#print(vert_p)
vert_p.sort(key=lambda x:x[0]) #단어 기준으로 정렬
for i in range(len(vert_p)-2): #단어 비교해서 같으면 누적 다르면 값 바꾸기
for j in range(i+1,len(vert_p)):
if vert_p[i][0] == vert_p[j][0]:
vert_p[i][1]+=vert_p[j][1]
vert_p[j]=['0',0]
print(vert_p)
vert_p=[i for i in vert_p if not '0' in i] #'0'들어간 열 제거
df_ver= pd.DataFrame(vert_p)
df_ver.to_excel(Stockfilename+' KNU_New_Vdic2.xlsx',sheet_name='sheet1')
####키워드파일 월별로 돌려서 그 나온 결과 파일들을 합쳐서 Merge_dictionay.py에 넣어서 사전 만들기 ####
# KNU 한국어 감성사전
# 작성자 : 온병원, 박상민, 나철원
# 소속 : 군산대학교 소프트웨어융합공학과 Data Intelligence Lab
# 홈페이지 : dilab.kunsan.ac.kr
# 작성일 : 2018.05.14
# 뜻풀이 데이터 출처 : https://github.com/mrchypark/stdkor
# 신조어 데이터 출처 : https://ko.wikipedia.org/wiki/%EB%8C%80%ED%95%9C%EB%AF%BC%EA%B5%AD%EC%9D%98_%EC%9D%B8%ED%84%B0%EB%84%B7_%EC%8B%A0%EC%A1%B0%EC%96%B4_%EB%AA%A9%EB%A1%9D
# 이모티콘 데이터 출처: https://ko.wikipedia.org/wiki/%EC%9D%B4%EB%AA%A8%ED%8B%B0%EC%BD%98
# SentiWordNet_3.0.0_20130122 데이터 출처 : http://sentiwordnet.isti.cnr.it/
# SenticNet-5.0 데이터 출처 : http://sentic.net/
# 감정단어사전0603 데이터 출처 : http://datascience.khu.ac.kr/board/bbs/board.php?bo_table=05_01&wr_id=91
# 김은영, “국어 감정동사 연구”, 2004.02, 학위논문(박사) - 전남대학교 국어국문학과 대학원
#-*-coding:utf-8-*-
import collections
import json
import warnings
warnings.simplefilter(("ignore"))
import openpyxl
import pandas as pd
import re
from datetime import datetime
class KnuSL():
def data_list(wordname):
with open('KnuSentiLex/data/SentiWord_info.json', encoding='utf-8-sig', mode='r') as f:
data = json.load(f)
result = [0,0]
for i in range(0, len(data)):
if data[i]['word'] == wordname:
result.pop()
result.pop()
result.append(data[i]['word_root'])
result.append(int(data[i]['polarity']))
r_word = result[0] #어근
s_word = result[1] #극성
return s_word
if __name__ == "__main__":
ksl = KnuSL
print("\nKNU 한국어 감성사전입니다~ :)")
print("사전에 단어가 없는 경우 결과가 None으로 나타납니다!!!")
print("종료하시려면 #을 입력해주세요!!!")
print("-2:매우 부정, -1:부정, 0:중립 or Unkwon, 1:긍정, 2:매우 긍정")
print("\n")
#########
Newsfilefolder = input("종목폴더입력: ")
Newsfilename=input("파일이름입력:")
Newsfilepos = "C:/Users/yangj/PycharmProjects/pythonProject1/뉴스키워드/"+Newsfilefolder+"/" + Newsfilename + ".xlsx"
Newsfile = openpyxl.load_workbook(Newsfilepos)#파일이름입력
ws=Newsfile.active
data=[]
date=[]
i=0
for row in ws.rows:
data.append([])
date.append(row[1].value)
for cell in row:
if cell.value != None:
data[i].append(cell.value)
i += 1
del data[0] #첫번째 의미없는 열 삭제
del date[0]
for i in range(len(data)):
del data[i][0] #각 열의 첫번째 행 삭제
for i in range(len(data)):
del data[i][0] #각 열의 날짜 행 삭제
KNUdata=[]
Tdata=[]
for x in range(len(data)):
KNUdata.append([])
Tdata.append([])
for y in range(len(data[x])):
KNUdata[x].append(ksl.data_list(data[x][y]))
Tdata[x].append([data[x][y], KNUdata[x][y]])
result = { '날짜':date, '단어, 극성':Tdata }
df = pd.DataFrame(result)
#print(df)
list_df=df.values.tolist() #dataframe list로 변경
#print(list_df)
#print(list_df[0][0]) 날짜 2021.01.01.
new_date = [] # 날짜 중복 삭제
for v in date:
if v not in new_date:
new_date.append(v)
#print(new_date)
Setlist =[]# 날짜별 키워드 넣기
for v in range(len(new_date)):
Setlist.append([])
Setlist[v].append(new_date[v])
for i in range(len(list_df)):
for j in range(len(list_df[i][1])):
if new_date[v] == list_df[i][0]:
Setlist[v].append(list_df[i][1][j])
#print(Setlist)
#print(Setlist[0][0]) #2021.01.01
#print(Setlist[0][1][1]) #극성 0
#print(type(Setlist[0][1][1])) #극성 모든 타입 int
#print(list_df[0][1][0]) 키워드와 극성 ['HMM…"체질개선해', 'X']
#print(list_df[0][1][0][1]) 극성 x
#print(list_df[0][0].split('.')[:3]) ['2021', '01', '01']
#df.to_excel(Newsfilename+' KNU.xlsx',sheet_name='sheet1')
Stockfilefolder = input("종목시세폴더입력: ")
Stockfilename=input("시세파일이름입력:")
fileStock = "C:/Users/yangj/PycharmProjects/pythonProject1/종목별시세/"+Stockfilefolder+"/" + Stockfilename + ".xlsx"
Stockfile = openpyxl.load_workbook(fileStock)#파일이름입력
stock_ws=Stockfile.active
Stock_data=[] #list 타입
i=0
for row in stock_ws.rows:
Stock_data.append([])
for cell in row:
if cell.value != None:
Stock_data[i].append(cell.value)
i += 1
del Stock_data[0]
for i in range(len(Stock_data)):
del Stock_data[i][2] # 대비 삭제
for i in range(len(Stock_data)):
del Stock_data[i][7] #거래대금 삭제
for i in range(len(Stock_data)):
del Stock_data[i][7] #시가 총액 삭제
for i in range(len(Stock_data)):
del Stock_data[i][7] #상장주식 수 삭제 / 결과:'일자', '종가', '등락률', '시가', '고가', '저가', '거래량'
#print(Stock_data)
def Calpercentage(a,b): #시초가 대비 고점/저점 비율
return abs(a-b)/a*100
####아래로 수정 필요 (미완성)####
i=0
for k in range(len(Setlist)):
if( Stock_data[i][0].split('/') == Setlist[k][0].split('.')[:3]): # 날짜 비교 날짜가 같다면
if Calpercentage(Stock_data[i][3],Stock_data[i][4]) > 2 : #당일 시가 대비 고가가 2퍼 높을때
for j in range(1,len(Setlist[k])):
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = 1
else:
Setlist[0][j][1] += 1
elif Calpercentage(Stock_data[i][3],Stock_data[i][5]) < -2 : #당일 시가 대비 저가가 2퍼 낮을 때
for j in range(1,len(Setlist[k])):
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = -1
else:
Setlist[0][j][1] -= 1
else:
if Stock_data[i+1][2] > 0: # 다음날 주가 등락률이 양수면
for j in range(1,len(Setlist[k])): #어제뉴스는 호재 취급
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = 1
else:
Setlist[k][j][1] += 1
elif Stock_data[i+1][2] < 0:
for j in range(1,len(Setlist[k])): # 음수면 어제 뉴스는 악재 취급
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = -1
else:
Setlist[k][j][1] -= 1
i+=1
else:
if Calpercentage(Stock_data[i][3], Stock_data[i][4]) > 2: # 당일 시가 대비 고가가 2퍼 높을때
for j in range(1, len(Setlist[k])):
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = 1
else:
Setlist[k][j][1] += 1
elif Calpercentage(Stock_data[i][3], Stock_data[i][5]) < -2: # 당일 시가 대비 저가가 2퍼 낮을 때
for j in range(1, len(Setlist[k])):
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = -1
else:
Setlist[k][j][1] -= 1
else:
if Stock_data[i + 1][2] > 0: # 다음날 주가 등락률이 양수면
for j in range(1, len(Setlist[k])): # 어제뉴스는 호재 취급
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = 1
else:
Setlist[k][j][1] += 1
elif Stock_data[i + 1][2] < 0:
for j in range(1, len(Setlist[k])): # 음수면 어제 뉴스는 악재 취급
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = -1
else:
Setlist[k][j][1] -= 1
i+=1
print(Setlist)
'''
Stock_dic=[]
for i in range(len(Setlist)):
Stock_dic.append([])
j = 2
for k in range(1,len(Setlist[i])-1):
if Setlist[i][k][0]== Setlist[i][j][0]:
Setlist[i][k][1]+=Setlist[i][j][1]
Stock_dic.append(Setlist[i][k])
j+=1
else:
Stock_dic.append(Setlist[i][k])
j+=1
print(Stock_dic)
'''
#df_Setlist = pd.DataFrame(Setlist)
#df_Setlist.to_excel(Stockfilename+' KNU_New.xlsx',sheet_name='sheet1')
Setlist_w = []
for i in range(len(Setlist)):
Setlist_w.append([])
for j in range(1, len(Setlist[i])):
Setlist_w[i].append(Setlist[i][j][0]) # 극성 제외 단어만 추출
counter = {}
for i in range(len(Setlist_w)):
counter[i] = collections.Counter(Setlist_w[i]) # 누적치
for i in range(len(Setlist_w)):
Setlist_w[i] = list(zip(counter[i].keys(), counter[i].values())) # 튜플 리스트화 [(값, 값)]
Plist = []
for i in range(len(Setlist_w)):
Plist.append([])
for j in range(len(Setlist_w[i])):
Plist[i].append(list(Setlist_w[i][j])) # 튜플 -> 리스트화 [[값, 값]]
for i in range(len(Plist)):
for j in range(len(Plist[i])):
Plist[i][j][1] = 0 # 극성 0으로 초기화
for i in range(len(Setlist)):
for j in range(1, len(Setlist[i])):
for h in range(len(Plist[i])):
if Setlist[i][j][0] == Plist[i][h][0]:
Plist[i][h][1] += Setlist[i][j][1] #누적치
vert_p=[] #수직 중복 삭제
for i in range(len(Plist)):
for j in range(len(Plist[i])):
vert_p.append(Plist[i][j]) #단어만 넣기
#print(vert_p)
vert_p.sort(key=lambda x:x[0]) #단어 기준으로 정렬
for i in range(len(vert_p)-2): #단어 비교해서 같으면 누적 다르면 값 바꾸기
for j in range(i+1,len(vert_p)):
if vert_p[i][0] == vert_p[j][0]:
vert_p[i][1]+=vert_p[j][1]
vert_p[j]=['0',0]
print(vert_p)
vert_p=[i for i in vert_p if not '0' in i] #'0'들어간 열 제거
df_ver= pd.DataFrame(vert_p)
df_ver.to_excel(Stockfilename+' KNU_New_vdic2.xlsx',sheet_name='sheet1')
#p_result = {'날짜': new_date, '단어, 극성': Plist}
#print(p_result)
#df_p_result = pd.DataFrame(p_result)
#df_p_result.to_excel(Stockfilename+' KNU_New_dic.xlsx',sheet_name='sheet1')
'''
for i in range(len(Stock_data)-1):
for k in range(len(Setlist)):
if (Stock_data[i][0].split('/') == Setlist[k][0].split('.')[:3]): # 날짜 비교
if Calpercentage(Stock_data[i][3], Stock_data[i][4]) > 2 : #당일 시가 대비 고가가 2퍼 높을때
for j in range(1, len(Setlist[k])):
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = 1
else:
Setlist[k][j][1] += 1
elif Calpercentage(Stock_data[i][3], Stock_data[i][5]) < -2 : #당일 시가 대비 저가가 2퍼 낮을 때
for j in range(1, len(Setlist[k])):
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = -1
else:
Setlist[k][j][1] -= 1
else:
if Stock_data[i+1][2] > 0: # 다음날 주가 등락률이 양수면
for j in range(1, len(Setlist[k])): #어제뉴스는 호재 취급
if Calpercentage(Stock_data[i+1][3], Stock_data[i+1][5]) < -2 :
for j in range(1, len(Setlist[k])):
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = -1
else:
Setlist[k][j][1] -= 1
else:
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = 1
else:
Setlist[k][j][1] += 1
elif Stock_data[i+1][2] < 0:
if Calpercentage(Stock_data[i+1][3], Stock_data[i+1][4]) > 2 :
for j in range(1, len(Setlist[k])):
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = 1
else:
Setlist[k][j][1] += 1
else:
for j in range(1, len(Setlist[k])): # 음수면 어제 뉴스는 악재 취급
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = -1
else:
Setlist[k][j][1] -= -1
else:
print(Setlist)
'''
# -*-coding:utf-8-*-
import collections
import json
import warnings
warnings.simplefilter(("ignore"))
import openpyxl
import pandas as pd
import re
from datetime import datetime
########코스피 감성 판단
class KnuSL():
def data_list(wordname):
with open('KnuSentiLex/data/SentiWord_info.json', encoding='utf-8-sig', mode='r') as f:
data = json.load(f)
result = [0, 0]
for i in range(0, len(data)):
if data[i]['word'] == wordname:
result.pop()
result.pop()
result.append(data[i]['word_root'])
result.append(int(data[i]['polarity']))
r_word = result[0] # 어근
s_word = result[1] # 극성
return s_word
if __name__ == "__main__":
ksl = KnuSL
print("\nKNU 한국어 감성사전입니다~ :)")
print("사전에 단어가 없는 경우 결과가 None으로 나타납니다!!!")
print("종료하시려면 #을 입력해주세요!!!")
print("-2:매우 부정, -1:부정, 0:중립 or Unkwon, 1:긍정, 2:매우 긍정")
print("\n")
#########
Newsfilefolder = input("종목폴더입력: ")
Newsfilename = input("파일이름입력:")
Newsfilepos = "C:/Users/yangj/PycharmProjects/pythonProject1/뉴스키워드/" + Newsfilefolder + "/" + Newsfilename + ".xlsx"
Newsfile = openpyxl.load_workbook(Newsfilepos) # 파일이름입력
ws = Newsfile.active
data = []
date = []
i = 0
for row in ws.rows:
data.append([])
date.append(row[1].value)
for cell in row:
if cell.value != None:
data[i].append(cell.value)
i += 1
del data[0] # 첫번째 의미없는 열 삭제
del date[0]
for i in range(len(data)):
del data[i][0] # 각 열의 첫번째 행 삭제
for i in range(len(data)):
del data[i][0] # 각 열의 날짜 행 삭제
KNUdata = []
Tdata = []
for x in range(len(data)):
KNUdata.append([])
Tdata.append([])
for y in range(len(data[x])):
KNUdata[x].append(ksl.data_list(data[x][y]))
Tdata[x].append([data[x][y], KNUdata[x][y]])
result = {'날짜': date, '단어, 극성': Tdata}
df = pd.DataFrame(result)
list_df = df.values.tolist() # dataframe list로 변경
new_date = [] # 날짜 중복 삭제
for v in date:
if v not in new_date:
new_date.append(v)
# print(new_date)
Setlist = [] # 날짜별 키워드 넣기
for v in range(len(new_date)):
Setlist.append([])
Setlist[v].append(new_date[v])
for i in range(len(list_df)):
for j in range(len(list_df[i][1])):
if new_date[v] == list_df[i][0]:
Setlist[v].append(list_df[i][1][j])
Stockfilefolder = input("종목시세폴더입력: ")
Stockfilename = input("시세파일이름입력:")
fileStock = "C:/Users/yangj/PycharmProjects/pythonProject1/종목별시세/" + Stockfilefolder + "/" + Stockfilename + ".xlsx"
Stockfile = openpyxl.load_workbook(fileStock) # 파일이름입력
stock_ws = Stockfile.active
Stock_data = [] # list 타입
i = 0
for row in stock_ws.rows:
Stock_data.append([])
for cell in row:
if cell.value != None:
Stock_data[i].append(cell.value)
i += 1
del Stock_data[0]
for i in range(len(Stock_data)):
del Stock_data[i][2] # 대비 삭제
for i in range(len(Stock_data)):
del Stock_data[i][7] # 거래대금 삭제
for i in range(len(Stock_data)):
del Stock_data[i][7] # 시가 총액 삭제
i = 0
for k in range(len(Setlist)):
if (Stock_data[i][0].split('/') == Setlist[k][0].split('.')[:3]): # 날짜 비교 날짜가 같다면
if Stock_data[i][2] > 0: # 코스피 등락이 양수
for j in range(1, len(Setlist[k])):
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = 1
else:
Setlist[k][j][1] += 1
elif Stock_data[i][2] < 0:
for j in range(1, len(Setlist[k])): # 음수면 어제 뉴스는 악재 취급
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = -1
else:
Setlist[k][j][1] -= 1
i += 1
else:
if Stock_data[i+1][2] > 0: # 다음날 주가 등락률이 양수면
for j in range(1, len(Setlist[k])): # 어제뉴스는 호재 취급
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = 1
else:
Setlist[k][j][1] += 1
elif Stock_data[i+1][2] < 0:
for j in range(1, len(Setlist[k])): # 음수면 어제 뉴스는 악재 취급
if Setlist[k][j][1] == 0:
Setlist[k][j][1] = -1
else:
Setlist[k][j][1] -= 1
Setlist_w = []
for i in range(len(Setlist)):
Setlist_w.append([])
for j in range(1, len(Setlist[i])):
Setlist_w[i].append(Setlist[i][j][0]) # 극성 제외 단어만 추출
counter = {}
for i in range(len(Setlist_w)):
counter[i] = collections.Counter(Setlist_w[i]) # 누적치
for i in range(len(Setlist_w)):
Setlist_w[i] = list(zip(counter[i].keys(), counter[i].values())) # 튜플 리스트화 [(값, 값)]
Plist = []
for i in range(len(Setlist_w)):
Plist.append([])
for j in range(len(Setlist_w[i])):
Plist[i].append(list(Setlist_w[i][j])) # 튜플 -> 리스트화 [[값, 값]]
for i in range(len(Plist)):
for j in range(len(Plist[i])):
Plist[i][j][1] = 0 # 극성 0으로 초기화
for i in range(len(Setlist)):
for j in range(1, len(Setlist[i])):
for h in range(len(Plist[i])):
if Setlist[i][j][0] == Plist[i][h][0]:
Plist[i][h][1] += Setlist[i][j][1] # 누적치
vert_p = [] # 수직 중복 삭제
for i in range(len(Plist)):
for j in range(len(Plist[i])):
vert_p.append(Plist[i][j]) # 단어만 넣기
# print(vert_p)
vert_p.sort(key=lambda x: x[0]) # 단어 기준으로 정렬
for i in range(len(vert_p) - 2): # 단어 비교해서 같으면 누적 다르면 값 바꾸기
for j in range(i + 1, len(vert_p)):
if vert_p[i][0] == vert_p[j][0]:
vert_p[i][1] += vert_p[j][1]
vert_p[j] = ['0', 0]
vert_p = [i for i in vert_p if not '0' in i] # '0'들어간 열 제거
df_ver = pd.DataFrame(vert_p)
df_ver.to_excel(Stockfilename + ' KNU_New_vdic2.xlsx', sheet_name='sheet1')
# This file was automatically generated by SWIG (http://www.swig.org).
# Version 3.0.0
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.
from sys import version_info
if version_info >= (2,6,0):
def swig_import_helper():
from os.path import dirname
import imp
fp = None
try:
fp, pathname, description = imp.find_module('_MeCab', [dirname(__file__)])
except ImportError:
import _MeCab
return _MeCab
if fp is not None:
try:
_mod = imp.load_module('_MeCab', fp, pathname, description)
finally:
fp.close()
return _mod
_MeCab = swig_import_helper()
del swig_import_helper
else:
import _MeCab
del version_info
try:
_swig_property = property
except NameError:
pass # Python < 2.2 doesn't have 'property'.
def _swig_setattr_nondynamic(self,class_type,name,value,static=1):
if (name == "thisown"): return self.this.own(value)
if (name == "this"):
if type(value).__name__ == 'SwigPyObject':
self.__dict__[name] = value
return
method = class_type.__swig_setmethods__.get(name,None)
if method: return method(self,value)
if (not static):
self.__dict__[name] = value
else:
raise AttributeError("You cannot add attributes to %s" % self)
def _swig_setattr(self,class_type,name,value):
return _swig_setattr_nondynamic(self,class_type,name,value,0)
def _swig_getattr(self,class_type,name):
if (name == "thisown"): return self.this.own()
method = class_type.__swig_getmethods__.get(name,None)
if method: return method(self)
raise AttributeError(name)
def _swig_repr(self):
try: strthis = "proxy of " + self.this.__repr__()
except: strthis = ""
return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
try:
_object = object
_newclass = 1
except AttributeError:
class _object : pass
_newclass = 0
class DictionaryInfo(_object):
__swig_setmethods__ = {}
__setattr__ = lambda self, name, value: _swig_setattr(self, DictionaryInfo, name, value)
__swig_getmethods__ = {}
__getattr__ = lambda self, name: _swig_getattr(self, DictionaryInfo, name)
__repr__ = _swig_repr
__swig_getmethods__["filename"] = _MeCab.DictionaryInfo_filename_get
if _newclass:filename = _swig_property(_MeCab.DictionaryInfo_filename_get)
__swig_getmethods__["charset"] = _MeCab.DictionaryInfo_charset_get
if _newclass:charset = _swig_property(_MeCab.DictionaryInfo_charset_get)
__swig_getmethods__["size"] = _MeCab.DictionaryInfo_size_get
if _newclass:size = _swig_property(_MeCab.DictionaryInfo_size_get)
__swig_getmethods__["type"] = _MeCab.DictionaryInfo_type_get
if _newclass:type = _swig_property(_MeCab.DictionaryInfo_type_get)
__swig_getmethods__["lsize"] = _MeCab.DictionaryInfo_lsize_get
if _newclass:lsize = _swig_property(_MeCab.DictionaryInfo_lsize_get)
__swig_getmethods__["rsize"] = _MeCab.DictionaryInfo_rsize_get
if _newclass:rsize = _swig_property(_MeCab.DictionaryInfo_rsize_get)
__swig_getmethods__["version"] = _MeCab.DictionaryInfo_version_get
if _newclass:version = _swig_property(_MeCab.DictionaryInfo_version_get)
__swig_getmethods__["next"] = _MeCab.DictionaryInfo_next_get
if _newclass:next = _swig_property(_MeCab.DictionaryInfo_next_get)
def __init__(self):
this = _MeCab.new_DictionaryInfo()
try: self.this.append(this)
except: self.this = this
__swig_destroy__ = _MeCab.delete_DictionaryInfo
__del__ = lambda self : None;
DictionaryInfo_swigregister = _MeCab.DictionaryInfo_swigregister
DictionaryInfo_swigregister(DictionaryInfo)
class Path(_object):
__swig_setmethods__ = {}
__setattr__ = lambda self, name, value: _swig_setattr(self, Path, name, value)
__swig_getmethods__ = {}
__getattr__ = lambda self, name: _swig_getattr(self, Path, name)
def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined")
__repr__ = _swig_repr
__swig_getmethods__["rnode"] = _MeCab.Path_rnode_get
if _newclass:rnode = _swig_property(_MeCab.Path_rnode_get)
__swig_getmethods__["rnext"] = _MeCab.Path_rnext_get
if _newclass:rnext = _swig_property(_MeCab.Path_rnext_get)
__swig_getmethods__["lnode"] = _MeCab.Path_lnode_get
if _newclass:lnode = _swig_property(_MeCab.Path_lnode_get)
__swig_getmethods__["lnext"] = _MeCab.Path_lnext_get
if _newclass:lnext = _swig_property(_MeCab.Path_lnext_get)
__swig_getmethods__["cost"] = _MeCab.Path_cost_get
if _newclass:cost = _swig_property(_MeCab.Path_cost_get)
__swig_setmethods__["prob"] = _MeCab.Path_prob_set
__swig_getmethods__["prob"] = _MeCab.Path_prob_get
if _newclass:prob = _swig_property(_MeCab.Path_prob_get, _MeCab.Path_prob_set)
Path_swigregister = _MeCab.Path_swigregister
Path_swigregister(Path)
class Node(_object):
__swig_setmethods__ = {}
__setattr__ = lambda self, name, value: _swig_setattr(self, Node, name, value)
__swig_getmethods__ = {}
__getattr__ = lambda self, name: _swig_getattr(self, Node, name)
def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined")
__repr__ = _swig_repr
__swig_getmethods__["prev"] = _MeCab.Node_prev_get
if _newclass:prev = _swig_property(_MeCab.Node_prev_get)
__swig_getmethods__["next"] = _MeCab.Node_next_get
if _newclass:next = _swig_property(_MeCab.Node_next_get)
__swig_getmethods__["enext"] = _MeCab.Node_enext_get
if _newclass:enext = _swig_property(_MeCab.Node_enext_get)
__swig_getmethods__["bnext"] = _MeCab.Node_bnext_get
if _newclass:bnext = _swig_property(_MeCab.Node_bnext_get)
__swig_getmethods__["rpath"] = _MeCab.Node_rpath_get
if _newclass:rpath = _swig_property(_MeCab.Node_rpath_get)
__swig_getmethods__["lpath"] = _MeCab.Node_lpath_get
if _newclass:lpath = _swig_property(_MeCab.Node_lpath_get)
__swig_getmethods__["feature"] = _MeCab.Node_feature_get
if _newclass:feature = _swig_property(_MeCab.Node_feature_get)
__swig_getmethods__["id"] = _MeCab.Node_id_get
if _newclass:id = _swig_property(_MeCab.Node_id_get)
__swig_getmethods__["length"] = _MeCab.Node_length_get
if _newclass:length = _swig_property(_MeCab.Node_length_get)
__swig_getmethods__["rlength"] = _MeCab.Node_rlength_get
if _newclass:rlength = _swig_property(_MeCab.Node_rlength_get)
__swig_getmethods__["rcAttr"] = _MeCab.Node_rcAttr_get
if _newclass:rcAttr = _swig_property(_MeCab.Node_rcAttr_get)
__swig_getmethods__["lcAttr"] = _MeCab.Node_lcAttr_get
if _newclass:lcAttr = _swig_property(_MeCab.Node_lcAttr_get)
__swig_getmethods__["posid"] = _MeCab.Node_posid_get
if _newclass:posid = _swig_property(_MeCab.Node_posid_get)
__swig_getmethods__["char_type"] = _MeCab.Node_char_type_get
if _newclass:char_type = _swig_property(_MeCab.Node_char_type_get)
__swig_getmethods__["stat"] = _MeCab.Node_stat_get
if _newclass:stat = _swig_property(_MeCab.Node_stat_get)
__swig_getmethods__["isbest"] = _MeCab.Node_isbest_get
if _newclass:isbest = _swig_property(_MeCab.Node_isbest_get)
__swig_getmethods__["alpha"] = _MeCab.Node_alpha_get
if _newclass:alpha = _swig_property(_MeCab.Node_alpha_get)
__swig_getmethods__["beta"] = _MeCab.Node_beta_get
if _newclass:beta = _swig_property(_MeCab.Node_beta_get)
__swig_setmethods__["prob"] = _MeCab.Node_prob_set
__swig_getmethods__["prob"] = _MeCab.Node_prob_get
if _newclass:prob = _swig_property(_MeCab.Node_prob_get, _MeCab.Node_prob_set)
__swig_getmethods__["wcost"] = _MeCab.Node_wcost_get
if _newclass:wcost = _swig_property(_MeCab.Node_wcost_get)
__swig_getmethods__["cost"] = _MeCab.Node_cost_get
if _newclass:cost = _swig_property(_MeCab.Node_cost_get)
__swig_getmethods__["surface"] = _MeCab.Node_surface_get
if _newclass:surface = _swig_property(_MeCab.Node_surface_get)
Node_swigregister = _MeCab.Node_swigregister
Node_swigregister(Node)
MECAB_NOR_NODE = _MeCab.MECAB_NOR_NODE
MECAB_UNK_NODE = _MeCab.MECAB_UNK_NODE
MECAB_BOS_NODE = _MeCab.MECAB_BOS_NODE
MECAB_EOS_NODE = _MeCab.MECAB_EOS_NODE
MECAB_EON_NODE = _MeCab.MECAB_EON_NODE
MECAB_SYS_DIC = _MeCab.MECAB_SYS_DIC
MECAB_USR_DIC = _MeCab.MECAB_USR_DIC
MECAB_UNK_DIC = _MeCab.MECAB_UNK_DIC
MECAB_ONE_BEST = _MeCab.MECAB_ONE_BEST
MECAB_NBEST = _MeCab.MECAB_NBEST
MECAB_PARTIAL = _MeCab.MECAB_PARTIAL
MECAB_MARGINAL_PROB = _MeCab.MECAB_MARGINAL_PROB
MECAB_ALTERNATIVE = _MeCab.MECAB_ALTERNATIVE
MECAB_ALL_MORPHS = _MeCab.MECAB_ALL_MORPHS
MECAB_ALLOCATE_SENTENCE = _MeCab.MECAB_ALLOCATE_SENTENCE
MECAB_ANY_BOUNDARY = _MeCab.MECAB_ANY_BOUNDARY
MECAB_TOKEN_BOUNDARY = _MeCab.MECAB_TOKEN_BOUNDARY
MECAB_INSIDE_TOKEN = _MeCab.MECAB_INSIDE_TOKEN
class Lattice(_object):
__swig_setmethods__ = {}
__setattr__ = lambda self, name, value: _swig_setattr(self, Lattice, name, value)
__swig_getmethods__ = {}
__getattr__ = lambda self, name: _swig_getattr(self, Lattice, name)
__repr__ = _swig_repr
def clear(self): return _MeCab.Lattice_clear(self)
def is_available(self): return _MeCab.Lattice_is_available(self)
def bos_node(self): return _MeCab.Lattice_bos_node(self)
def eos_node(self): return _MeCab.Lattice_eos_node(self)
def end_nodes(self, *args): return _MeCab.Lattice_end_nodes(self, *args)
def begin_nodes(self, *args): return _MeCab.Lattice_begin_nodes(self, *args)
def sentence(self): return _MeCab.Lattice_sentence(self)
def size(self): return _MeCab.Lattice_size(self)
def set_Z(self, *args): return _MeCab.Lattice_set_Z(self, *args)
def Z(self): return _MeCab.Lattice_Z(self)
def set_theta(self, *args): return _MeCab.Lattice_set_theta(self, *args)
def theta(self): return _MeCab.Lattice_theta(self)
def next(self): return _MeCab.Lattice_next(self)
def request_type(self): return _MeCab.Lattice_request_type(self)
def has_request_type(self, *args): return _MeCab.Lattice_has_request_type(self, *args)
def set_request_type(self, *args): return _MeCab.Lattice_set_request_type(self, *args)
def add_request_type(self, *args): return _MeCab.Lattice_add_request_type(self, *args)
def remove_request_type(self, *args): return _MeCab.Lattice_remove_request_type(self, *args)
def newNode(self): return _MeCab.Lattice_newNode(self)
def toString(self, *args): return _MeCab.Lattice_toString(self, *args)
def enumNBestAsString(self, *args): return _MeCab.Lattice_enumNBestAsString(self, *args)
def has_constraint(self): return _MeCab.Lattice_has_constraint(self)
def boundary_constraint(self, *args): return _MeCab.Lattice_boundary_constraint(self, *args)
def feature_constraint(self, *args): return _MeCab.Lattice_feature_constraint(self, *args)
def set_boundary_constraint(self, *args): return _MeCab.Lattice_set_boundary_constraint(self, *args)
def set_feature_constraint(self, *args): return _MeCab.Lattice_set_feature_constraint(self, *args)
def set_result(self, *args): return _MeCab.Lattice_set_result(self, *args)
def what(self): return _MeCab.Lattice_what(self)
def set_what(self, *args): return _MeCab.Lattice_set_what(self, *args)
__swig_destroy__ = _MeCab.delete_Lattice
__del__ = lambda self : None;
def __init__(self):
this = _MeCab.new_Lattice()
try: self.this.append(this)
except: self.this = this
def set_sentence(self, *args): return _MeCab.Lattice_set_sentence(self, *args)
Lattice_swigregister = _MeCab.Lattice_swigregister
Lattice_swigregister(Lattice)
class Model(_object):
__swig_setmethods__ = {}
__setattr__ = lambda self, name, value: _swig_setattr(self, Model, name, value)
__swig_getmethods__ = {}
__getattr__ = lambda self, name: _swig_getattr(self, Model, name)
__repr__ = _swig_repr
def dictionary_info(self): return _MeCab.Model_dictionary_info(self)
def transition_cost(self, *args): return _MeCab.Model_transition_cost(self, *args)
def lookup(self, *args): return _MeCab.Model_lookup(self, *args)
def createTagger(self): return _MeCab.Model_createTagger(self)
def createLattice(self): return _MeCab.Model_createLattice(self)
def swap(self, *args): return _MeCab.Model_swap(self, *args)
__swig_getmethods__["version"] = lambda x: _MeCab.Model_version
if _newclass:version = staticmethod(_MeCab.Model_version)
__swig_destroy__ = _MeCab.delete_Model
__del__ = lambda self : None;
__swig_getmethods__["create"] = lambda x: _MeCab.Model_create
if _newclass:create = staticmethod(_MeCab.Model_create)
def __init__(self, *args):
this = _MeCab.new_Model(*args)
try: self.this.append(this)
except: self.this = this
Model_swigregister = _MeCab.Model_swigregister
Model_swigregister(Model)
def Model_version():
return _MeCab.Model_version()
Model_version = _MeCab.Model_version
def Model_create(*args):
return _MeCab.Model_create(*args)
Model_create = _MeCab.Model_create
class Tagger(_object):
__swig_setmethods__ = {}
__setattr__ = lambda self, name, value: _swig_setattr(self, Tagger, name, value)
__swig_getmethods__ = {}
__getattr__ = lambda self, name: _swig_getattr(self, Tagger, name)
__repr__ = _swig_repr
def parse(self, *args): return _MeCab.Tagger_parse(self, *args)
def parseToNode(self, *args): return _MeCab.Tagger_parseToNode(self, *args)
def parseNBest(self, *args): return _MeCab.Tagger_parseNBest(self, *args)
def parseNBestInit(self, *args): return _MeCab.Tagger_parseNBestInit(self, *args)
def nextNode(self): return _MeCab.Tagger_nextNode(self)
def next(self): return _MeCab.Tagger_next(self)
def formatNode(self, *args): return _MeCab.Tagger_formatNode(self, *args)
def set_request_type(self, *args): return _MeCab.Tagger_set_request_type(self, *args)
def request_type(self): return _MeCab.Tagger_request_type(self)
def partial(self): return _MeCab.Tagger_partial(self)
def set_partial(self, *args): return _MeCab.Tagger_set_partial(self, *args)
def lattice_level(self): return _MeCab.Tagger_lattice_level(self)
def set_lattice_level(self, *args): return _MeCab.Tagger_set_lattice_level(self, *args)
def all_morphs(self): return _MeCab.Tagger_all_morphs(self)
def set_all_morphs(self, *args): return _MeCab.Tagger_set_all_morphs(self, *args)
def set_theta(self, *args): return _MeCab.Tagger_set_theta(self, *args)
def theta(self): return _MeCab.Tagger_theta(self)
def dictionary_info(self): return _MeCab.Tagger_dictionary_info(self)
def what(self): return _MeCab.Tagger_what(self)
__swig_destroy__ = _MeCab.delete_Tagger
__del__ = lambda self : None;
__swig_getmethods__["create"] = lambda x: _MeCab.Tagger_create
if _newclass:create = staticmethod(_MeCab.Tagger_create)
__swig_getmethods__["version"] = lambda x: _MeCab.Tagger_version
if _newclass:version = staticmethod(_MeCab.Tagger_version)
def __init__(self, *args):
this = _MeCab.new_Tagger(*args)
try: self.this.append(this)
except: self.this = this
def parseToString(self, *args): return _MeCab.Tagger_parseToString(self, *args)
Tagger_swigregister = _MeCab.Tagger_swigregister
Tagger_swigregister(Tagger)
def Tagger_create(*args):
return _MeCab.Tagger_create(*args)
Tagger_create = _MeCab.Tagger_create
def Tagger_version():
return _MeCab.Tagger_version()
Tagger_version = _MeCab.Tagger_version
VERSION = _MeCab.VERSION
# This file is compatible with both classic and new-style classes.
No preview for this file type
Metadata-Version: 2.1
Name: mecab-python
Version: 0.996-ko-0.9.2-msvc
Summary: UNKNOWN
Home-page: UNKNOWN
Author: UNKNOWN
Author-email: UNKNOWN
License: UNKNOWN
Platform: UNKNOWN
UNKNOWN
MeCab.py,sha256=cuvFTwJk_Z38aY54gIKoBtR46p6tPXOVSKkpoA1PcY4,15733
_MeCab.cp37-win_amd64.pyd,sha256=u-WVy7oAK9dySDKhPh_DNHIWW4x6yHSwu6hjMKqdz5E,116736
__pycache__/MeCab.cpython-37.pyc,,
libmecab.dll,sha256=lRhwboyrXWEXXnDn8soNA05id3UvWfPpP7bvTXj5iH4,1908736
mecab_python-0.996_ko_0.9.2_msvc.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
mecab_python-0.996_ko_0.9.2_msvc.dist-info/METADATA,sha256=Qw4D_1k4TCzF1Ul5k47s6hOnafUJSLyiiGhqffEnszs,190
mecab_python-0.996_ko_0.9.2_msvc.dist-info/RECORD,,
mecab_python-0.996_ko_0.9.2_msvc.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
mecab_python-0.996_ko_0.9.2_msvc.dist-info/WHEEL,sha256=jmFYSwR2oi5DgMGgmnuB-EJxqLMkUojGGdmJ0wz35aI,106
mecab_python-0.996_ko_0.9.2_msvc.dist-info/direct_url.json,sha256=8Wv8YjFpjisUlH--mXnzxpj5B8uexD6AtZjonw2yk5k,142
mecab_python-0.996_ko_0.9.2_msvc.dist-info/top_level.txt,sha256=E6HHbCcV114TjQmzLJGG5aSu2Sb0tjGGxkjler1jxrQ,13
Wheel-Version: 1.0
Generator: bdist_wheel (0.31.1)
Root-Is-Purelib: false
Tag: cp37-cp37m-win_amd64
{"archive_info": {}, "url": "file:///C:/Users/yangj/PycharmProjects/pythonProject1/mecab_python-0.996_ko_0.9.2_msvc-cp37-cp37m-win_amd64.whl"}
\ No newline at end of file
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type