Python/Python For Analytics 33

[Python] pandas rank를 이용한 순위 표시

rank : Series나 DataFrame의 값의 순위를 표시 Sample Dataframe 만들기 import pandas as pd lst_names = ['철수','영희','민수', '민아', '영석', '석희', '희순', '영철'] lst_lang = [80,90,95,100,100,95,75,80] lst_math = [70,85,90,95,75,80,90,85] lst_eng = [80,85,80,100,95,90,85,90] df = pd.DataFrame([ x for x in zip(lst_names,lst_lang,lst_math,lst_eng)], columns=['이름','국어','수학','영어']) df 국어, 수학, 영어의 총점을 구하기 df['총점'] = df['국어'] +..

[Python] pandas groupby - count, max, min, mean, sum, agg

2X8 Sample DataSet import pandas as pd lst_A = ['a','b','c', 'a', 'a', 'b', 'c', 'c'] lst_B = [10,15,20,15,30,40,35,5] df = pd.DataFrame([ x for x in zip(lst_A,lst_B)], columns=['Data','Score']) df count : 그룹화 되는 데이터의 갯수 df.groupby('Data').count() max : 그룹화 되는 데이터의 최대값 df.groupby('Data').max() min : 그룹화 되는 데이터의 최소값 df.groupby('Data').min() sum : 그룹화 되는 데이터의 합 df.groupby('Data').sum() mean : 그룹화 ..

[Python] pandas의 sort_values를 이용한 dataframe 정렬

sort_values : 값을 기준으로 정렬하는 메소드 학생의 영어점수와 수학점수 dataframe 샘플 만들기 import pandas as pd names = ['철수','영희','민수','영자'] eng_point = [90,85,70,75] math_point = [100,90,90,85] df = pd.DataFrame([ x for x in zip(names,eng_point,math_point)], columns = ['학생', '영어', '수학']) print(df) ----------------------------------------------------------------------------- 학생 영어 수학 0 철수 90 100 1 영희 85 90 2 민수 70 90 3 영자 ..

[Python] Pandas를 이용한 IIS 웹 로그 분석 (sc-bytes, cs-bytes)

sc-bytes : 어플리케이션(웹 사이트)에서 클라이언트로 보낸 bytes. cs-bytes : 클라이언트에서 어플리케이션(웹 사이트)로 보낸 bytes. IIS로그 필드 중 sc-bytes와 sc-bytes는 웹 사이트와 클라이언트간 통신양(bytes)를 숫자로 표기한 것으로 웹 사이트의 성능을 분석하는 데 있어 중요한 데이터이다. 특히, On-premise가 아닌 클라우드 환경에서 웹 사이트를 서비스할 경우 sc-bytes는 아웃바운드 트래픽을 가늠하기에 좋은 지표이기 때문에(아웃바운드 트래픽 = 요금) 유심깊게 점검하는 편이 좋다. IIS 웹 로그를 pandas dataframe 만들기 import pandas as pd log_field = ['date', 'time', 's-sitename',..

[Python] Pandas DataFrame 컬럼명 특정 문자로 변경

import pandas as pd df = pd.DataFrame({'A-1':[1,2,3,4,5],'A-2':[1,2,3,4,5]}) print(df.columns) --------------------------------------------------------- Index(['A-1', 'A-2'], dtype='object') # columns.str.replace(변경전 문자,변경할 문자) df.columns = df.columns.str.replace('-','_') print(df.columns) --------------------------------------------------------- Index(['A_1', 'A_2'], dtype='object') # - A-1이 A_..

[Python] pandas datetime 타입 시간/주/일 더하기

시스템 로그를 분석할 때, 로그시간에 UTC시간을 더해줘야 할 때가 있는데, datetime의 timedelta의 메소드를 이용하여 변환할 수 있겠다. 기준일 from datetime import datetime, timedelta ....... print(data['time']) 0 2019-08-27 00:00:00 1 2019-08-27 00:00:00 2 2019-08-27 00:00:00 3 2019-08-27 00:00:00 4 2019-08-27 00:00:00 ... 373064 2019-08-27 23:59:58 373065 2019-08-27 23:59:59 373066 2019-08-27 23:59:59 373067 2019-08-27 23:59:59 373068 2019-08-27 ..

[Python] list data type pandas의 DataFrame 만들기

1개 의 리스트 데이터를 DataFrame만들기 import pandas as pd lst_A = ['a','b','c','d'] df = pd.DataFrame(lst_A) print(df) ------------------------------- 0 0 a 1 b 2 c 3 d 2개이상의 동일한 길이의 리스트 데이터를 DataFrame만들기 ( zip 활용) import pandas as pd lst_A = ['a','b','c','d'] lst_B = [1,2,3,4] df = pd.DataFrame([ x for x in zip(lst_A,lst_B)]) print(df) ------------------------------------------------- 0 1 0 a 1 1 b 2 2 c ..

[Python] pandas를 이용한 mariadb 결과값 다른 mariadb 테이블로 저장

python pandas를 이용해서 mariadb의 쿼리 결과값을 다른 table로 저장이 가능하다. 샘플로 perfomance_log 테이블의 4개 컬럼 1,000,000를 불러와서 새로운 테이블로 저장해보겠다. sys_processortime sys_mem_availablembytes sys_net_revbytes_sec sys_net_sendbytes import pandas as pd import pymysql from sqlalchemy import create_engine conn = pymysql.connect(host='host', user='user', password='password' ,db='db', charset='utf8') query = 'select sys_processort..