목록파이썬/기본 문법 정리 (35)
차밍이
목차 reduce 함수란? reduce 함수는 반복 가능한 객체이다. 각 요소들을 이전 연산 결과들과 누적하여 반환한다. functools 모듈에서 불러와야 한다. from functools import reduce reduce 예제 from functools import reduce dataList = [1, 2, 3, 4, 5] def sum(a, b): return a + b reduce(sum, dataList) >>> 15 reduce 실행 과정 sum(sum(sum(sum(1, 2), 3), 4), 5) => ((((1 + 2) + 3) + 4) +5) => 15 시각적으로 살펴보면 다음과 같다. Reference https://technote.kr/344 https://heytech.tist..
목차 getattr() 구문 getattr(object, attribute, default) [매개변수] object : 필수. 객체. attribute : 필수. 값을 얻을 속성명. default : 선택. 속성이 없는 경우 반환할 값. getattr() 함수의 정의 gattattr(object, name) 으로 object안의 메소드(name)을 호출한다. object 내부의 name이라는 멤버를 반환한다. 사실 정의만 보면 잘 이해가 되지 않는다. 조금 더 쉽게 애기하자면 문자열로 객체의 속성값이나 메소드를 사용할 수 있다. Example 예제를 보면 쉽게 이해할 수 있다. class Animal: leg = 4 size = "Big" def enemy(self): print("컹컹컹!") def ..
목차 파일명 한 번에 바꾸기 os 모듈의 rename 메소드를 사용해서 바꿀 수 있다. 폴더의 파일 명 앞의 conved_를 모두 삭제한 이름으로 바꾸려고 합니다. 기존 파일 확인하기 파이썬에서 기존 파일 위치 경로를 통해 해당 파일 이름들을 불러와 확인합니다. import os path = "./Documents/test" file_list = os.listdir(path) file_list 파일 이름 수정 및 저장 for file in file_list: # 전체 파일 리스트에 대해서 수행 src = os.path.join(path, file) # 기존 파일 경로 dst_name = file.replace("conved_", "") # 이름 수정 dst = os.path.join(path, dst_n..
목차 파일명 가져오기 os.listdir을 사용해서 원하는 파일의 파일 명을 가져옵니다. import os path = "./Documents/test" file_list = os.listdir(path) file_list 파일명에서 확장자 구분하기 file = file_list[0] os.path.splitext(file) >>> ('2c9fb', '.log') 2c9fb.log >>> 2c9fb 와 .log로 나누어진 것을 확인할 수 있습니다. 파일 이름 부분과 확장자로 나누어지므로 각자 할당 받아서 사용할 수 있습니다. ex) 아래 name, ext = os.path(splitext(file)) 확장자 명에 . 을 포함하고 있으므로 확장자만 사용하려면 ext[1:] 과 같은 방법으로 사용하면 됩니다..
데이터 구간별 범주화 pd.cut 데이터 값들을 특정 구간에 따라서 범주화할 때, 사용 범주를 나누고 라벨을 붙여서 범주형 데이터로 변환 가능 연속 데이터를 구간별로 범주화하는 함수 pd.cut 사용 방법 import pandas as pd ages = [0, 10, 15, 13, 21, 23, 37, 31, 43, 80, 61, 20, 41, 32, 100] bins = [0, 15, 25, 35, 60, 100] labels = ['어린이', '청년', '장년', '중년', '노년'] cuts = pd.cut(ages, bins, right=False, labels=labels) cuts >>> [어린이, 어린이, 청년, 어린이, 청년, ..., 노년, 청년, 중년, 장년, NaN] Length: 1..
1. Pandas 자료 구조 판다스에서 사용하는 자료 구조는 두 가지가 있습니다. Series와 DataFrame이 있습니다. Series 생성 시 index 매개 변수를 이용하여 이름을 지정할 수 있습니다. 각 index에 따른 Series 들이 모여서 DataFrame을 구성합니다. 1.1 Series import pandas as pd s = pd.Series([1, 2, 3]) s >>> 0 1 1 2 2 3 dtype: int64 1.2 Dataframe df = pd.DataFrame([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) df >>> 0 1 2 0 1 2 3 1 4 5 6 2 7 8 9 행과 열을 정하지 않으면 0, 1, 2 순서로 형성됩니다. 1.2.1 DataFra..
파이썬에서 함수를 사용할 때 입력 값을 받아서 사용하는 경우가 많습니다. 함수에서 입력 값을 받을 때, 상황에 따라서 입력받는 값의 개수가 달라질 수 있는 경우가 생길 수 있습니다. 예를 들면 내장 함수인 sum과 같은 경우가 있습니다. list 내부의 값들의 sum을 진행할 때, list의 길이에 영향을 받지 않고 모두 합해집니다. 이처럼 다양한 값을 받아서 함수를 사용하기 위한 "매개변수"에 대해서 알아보겠습니다. 1. 위치매개변수 가장 흔하게 사용되는 매개변수 전달 방식 매개변수의 위치에 맞게 값이 전달되는 방식 example def change_location(num1, num2): return num2, num1 change_location(5,10) >>> (10, 5) add_value(5,..
Numpy 기초를 공부하기 2 np.fromfunction def myfunc(x,y): return 10*x + y arr1 = np.fromfunction(myfunc,(5,4), dtype=int) arr2 = np.fromfunction(myfunc,(5,4), dtype=int) arr1, arr2 >>> (array([[ 0, 1, 2, 3], [10, 11, 12, 13], [20, 21, 22, 23], [30, 31, 32, 33], [40, 41, 42, 43]]), array([[ 0, 1, 2, 3], [10, 11, 12, 13], [20, 21, 22, 23], [30, 31, 32, 33], [40, 41, 42, 43]])) np.fromfunction을 사용하면 함수 형식을..
zip함수를 사용하면 여러 그룹의 데이터를 묶어서 출력해줄 수 있습니다. zip 함수 zip()함수는 iterable 객체를 인자로 받아서 사용합니다. 여러 개의 iterable객체를 받은 후 자료형 들을 묶어서 튜플 형태로 출력해줍니다. # zip(*iterable) : 동일한 개수로 이루어진 자료형을 묶어 줌 a = ['one', 'two', 'three'] b = ['a', 'b', 'c'] list(zip(a, b)) >>> [('one', 'a'), ('two', 'b'), ('three', 'c')] a라는 리스트와 b라는 리스트의 값들이 index 순서에 따라서 묶어진 것을 확인할 수 있습니다. # 두 리스트의 요소 끄집어내기 # zip 함수 사용한 방법 for val1, val2 in zi..
enumerate함수를 사용하면 리스트의 요소와 인덱스를 같이 가져올 수 있다. a = ['one', 'two', 'three'] list(enumerate(a)) >>>[(0, 'one'), (1, 'two'), (2, 'three')] enumerate를 사용하면 순서를 0번부터 붙여주는 것을 확인할 수 있습니다. enumerate에서 값을 튜플 형식으로 인덱스 값과 리스트의 변수 값을 가져오는 것을 확인할 수 있습니다. # 리스트의 요소와 인덱스를 가져오기 a = ['one', 'two', 'three'] for index in range(len(a)): print(index, a[index]) >>> 0 one 1 two 2 three # enumerate 함수를 사용한 방법 a = ['one',..