Python/Python For Analytics 33

[ Python ] pandas plot 을 이용한 다양한 graph 그리기

Pandas의 plot 을 이용하여 그래프 그리기 import numpy as np import pandas as pd df = pd.DataFrame(np.random.rand(20,6), columns=['a','b','c','d','e','f']) line graph df.plot.line(figsize = (15,5)) bar graph df.plot.bar(figsize = (15,5), grid=True) area graph df.plot.area(figsize = (15,5), xticks = (1,5,10,15,20), yticks = (1,2,3,4,5)) area graph ( Time index ) import numpy as np import pandas as pd from date..

[ Python ] csv 파일 읽고, 쓰기 ( pandas / csv 모듈 )

데이터를 처리하다 보면 csv 파일 자주 만나게 되는데, Python pandas와 csv 모듈로 처리할 수 있다. 파이썬 pandas csv 파일 읽고, 쓰기 샘플데이터 : example.csv (UTF-8) ============================= "Student","Math","Computer","English" "인호",90,85,100 "철수",85,100,95 "영희",75,70,85 "민수",95,85,90 "지훈",100,85,95 "지영",90,85,90 "정희",95,85,95 ============================= pandas의 read_csv 메소드로 csv 파일 읽기 import pandas as pd df = pd.read_csv(r'C:\Python\..

[ Python ] matplotlib plot Shading Area (특정구간 강조)

그래프를 추출할 때, 쉐딩(강조)을 적용하기. 엔지니어의 보고서에 그래프 넣기 기본 x, y 막대 그래프 x = [ x + 1 for x in range(30) ] y = [ randint(1,5) for x in range(30) ] 단일 구간 강조 import matplotlib.pyplot as plt from random import randint a = 3 b = 8 plt.axvspan(a, b, color='blue', alpha=0.1) plt.plot(x, y) plt.show() 여러구간 강조 하기 (구간 지정) import matplotlib.pyplot as plt from random import randint z = {3:4,15:20,25:29} # 구간 Dictionary f..

[ Python ] pandas를 이용한 bar graph (stacked)

1. 기본 bar 그래프 그리기 import pandas as pd month = [ 'Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec' ] data = { "Banana":[52, 83, 82, 53, 99, 94, 83, 74, 87, 70, 63, 74], "Orange":[99, 71, 77, 57, 87, 50, 59, 58, 63, 76, 51, 88], "mango":[50, 71, 93, 82, 70, 58, 55, 97, 76, 52, 97, 83], } df = pd.DataFrame(data,index=month) df.plot(kind="bar",figsize=(15,10)) 2. 스택그래프를 그리려면, s..

[Python] wordcloud 만들기

라이브러리 설치 pip install wordcloud pip install matplotlib 텍스트의 빈도를 계산하여 클라우드 그리기 text = ''' 파이썬 파이썬 자바 파이썬 C언어 GOLANG 파이썬 ASP 자바스크립트 파이썬 C++ C언어 델파이 파이썬 ''' from wordcloud import WordCloud import matplotlib.pyplot as plt wordcloud = WordCloud(font_path='NanumBarunGothic.ttf', background_color='black').generate_from_text(text) plt.figure(figsize=(5,5)) plt.imshow(wordcloud, interpolation='bilinear') ..

[Python] seaborn을 이용한 간단한 heatmap 그리기

import seaborn as sns import pandas as pd import matplotlib.pyplot as plt # 7 X 7 2차원 배열과 X축 , y축 value = [[10,20,30,30,40], [10,20,30,30,40], [10,20,30,30,40], [10,20,30,30,40], [10,20,30,30,40]] x = ['X1', 'X2', 'X3', 'X4', 'X5'] y = ['Y1', 'Y2', 'Y3', 'Y4', 'Y5'] # create Dataframe df = pd.DataFrame(value,columns=x, index=y) # heatmap fig, ax = plt.subplots(figsize=(15,10)) # figsize ax = sns..

[Python] pandas와 pymssql을 이용하여 MSSQL 연동

데이터 분석을 위해 CentOS 7(Linux)에서 MSSQL DB로 데이터를 gathering 1. pymssql은 pip install pymssql로 설치 2. pymssql로 DB에 접근하여, 쿼리 결과의 ROW를 Pandas의 DataFrame로 읽는다. import pymssql import pandas as pd conn = pymssql.connect(host=' ', user=' ', password=' ', database=' ') querys= ''' SELECT 'PANDAS PYMSSQL TEST' ''' data = pd.read_sql(sql=querys, con=conn) conn.close() print(data) =================================..

[Python] padnas Dataframe 에서 astype을 이용하여 숫자형으로 변환할 수 없을 때 to_numeric을 이용

astype을 이용하여 문자열을 숫자형으로 형 변환할 때, 사용하지만 일부 변환할 수 없는 데이터가 있을 때는, ValueError 에러를 발생시킨다. 이럴경우, to_numeric을 이용하여, 변환할 수 없는 데이터를 NaN 처리하고, 변환 시킬 수 있다. 아래와 같이 price에 1500a라는 값이 있다. Dataframe을 만들 때, object 타입으로 만들어 지며, 이 데이터 때문에 astype을 이용하여 숫자형을 변경할 수 없다. import pandas as pd df = pd.DataFrame([['milk',1000],['icecream',500],['bread','1500a']], columns=['food','price']) df df.dtypes df['price'] = df['pr..

[Python] matplotlib - 그래프에 값 표시 하기

그래프에 값을 표시 하기 위해서는 matplotlib.pyplot.text 를 사용하면 되며, x축과 y축의 좌표에 값을 텍스트로 표시하는 것이다. x = [1,2,3,4,5] y = [100,200,300,400,500] import matplotlib.pyplot as plt plt.bar(x,y) for i, v in enumerate(x): plt.text(v, y[i], y[i], # 좌표 (x축 = v, y축 = y[0]..y[1], 표시 = y[0]..y[1]) fontsize = 9, color='blue', horizontalalignment='center', # horizontalalignment (left, center, right) verticalalignment='bottom') ..