Python
-
[Python] pandas dataframe 리스트로 변환Python/Python For Analytics 2019. 10. 30. 12:48
list 데이터를 pandas dataframe으로 만들기 import pandas as pd lst_A = ['a','b','c','d', 'e', 1, 2] df = pd.DataFrame(lst_A) print(df) list 타입으로 변환 import numpy as np np.array(df[0].tolist()) ----------------------------- array(['a', 'b', 'c', 'd', 'e', 'f', 'g'], dtype='
-
[Python] numpy setdiff1d(차집합)을 이용한 2개의 텍스트 파일 비교Python/Python For Analytics 2019. 10. 30. 12:20
numpy.setdiff1d(array1, array2) : 2개의 array의 차집합 A_file.txt B_file.txt Tomatoes are red Bananas are yellow Strawberries are red Oranges are orange Blackberries are black Tomatoes are red Bananas are yellow Blackberries are black import pandas as pd import numpy as np df_A = pd.read_csv('A_file.txt', names=['data_A']) df_B = pd.read_csv('B_file.txt', names=['data_B']) list_A = np.array(df_A['data..
-
[Python] pandas rank를 이용한 순위 표시Python/Python For Analytics 2019. 10. 28. 21:04
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, aggPython/Python For Analytics 2019. 10. 28. 20:11
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] Obtain capacity for Linux specific folder capacity. (리눅스 특정 확장자 용량 구하기)Python/Python for Linux 2019. 10. 25. 19:03
특정 리눅스 폴더에 아래와 같이 특정 확장자(log) 만의 총 용량을 구하고 싶을 때 모든 용량을 구하고 싶을 때는 glob('*.*')와 os.path.getsise 모듈을 사용하면 된다. #!/usr/bin/python from os.path import getsize from glob import glob print sum([ getsize(x) for x in glob('*.log') ]) ------------------------------------------------- 5177085067 SAMPLE 324448621 Sep 11 02:03 2019-09-10.log 285908878 Sep 16 16:53 2019-09-16.log 381334202 Sep 26 16:20 2019-09..
-
[Python] reduce 함수Python/Python Programming 2019. 10. 24. 22:42
functools.reduce(function, iterable, initializer) : 왼쪽에서 오른쪽으로 반복을 감소시키면서 함수 연산 왼쪽에서 오른쪽으로 순회를 하게 되고, x는 왼쪽, y는 오른쪽에 할당이 된다. * python3에서는 functools 모듈을 사용해야 한다. reduce를 이용한 모슨 숫자 요소들 더하기 from functools import reduce reduce(lambda x, y: x + y, [2, 4, 6, 8, 10, 12, 14]) ------------------------------------------------------ 56 reduce를 이용한 모슨 숫자 요소들 더하기. (initializer - 초기값 100 고정) from functools im..
-
[Python] subprocess모듈과 7z을 이용한 전일 로그 자동 압축 보관Python/Python for Windows 2019. 10. 24. 16:31
7z은 커맨드 명령어를 제공하며, 오픈소스이다. 다운로드 페이지 : https://www.7-zip.org/download.html Download Download .7z Any / x86 / x64 LZMA SDK: (C, C++, C#, Java) www.7-zip.org 이번 포스팅에서 쓰는 옵션은 압축(a) 옵션을 사용하여 전일 로그를 압축해보려 한다. 다양한 옵션을 이용하려면 포스팅 하단의 URL 경로나 7z.exe 명령어를 실행하면 알 수 있다. 대상 로그는 IIS로그로 포맷은 ex_yyyymmdd.log 형식이며, 현재 2019-10-24일 기준으로 전일 기준인 ex_20191023.log 파일이다. import subprocess from datetime import timedelta fr..