[python] os 모듈 정복하기
# os 모듈 불러오기 import os # 현재 working directory 가져오기 os.getcwd() # working directory 변경 os.chdir(path) # directory 목록 확인 os.listdir() # directory scan os.scandir() 여기서 os란? operating system을 의미
# os 모듈 불러오기 import os # 현재 working directory 가져오기 os.getcwd() # working directory 변경 os.chdir(path) # directory 목록 확인 os.listdir() # directory scan os.scandir() 여기서 os란? operating system을 의미
errorbar(오차막대)란, 데이터의 편차를 표시하기 위한 그래프 형태를 말한다. errorbar를 그리기 위해서는 데이터의 편차를 나타내는 yerr가 추가로 있어야 하는데 보통 표준편차로 나타내니 이번 포스팅에서도 표준편차를 기준으로 yerr를 이용하도록 한다. 먼저, 전제는 list가 아닌 dataframe으로 구한다는 점이다. (큰 차이는 없음) 예를 들어 sao2 대비 spo2에 대한 errorbar를 그린다고 하면 각 sao2의 값으로 묶은 spo2의 평균값과 표준편차값이 필요하다. 이는 groupby로 편하게 나타낼 수 있다. spo2_mean = df.groupby('sao2', as_index=Fasle)['spo2'].mean() spo2_std = df.groupby('sao2', a..
situation pandas의 경우, z컬럼 타입을 동적 추론 하는데 많은 메모리가 소모된다. 따라서 왠만하면 타입을 정해주는 게 좋다. solution columns의 데이터 타입을 정해주거나 low_memory=False라는 파라미터를 추가하여 메모리를 덜 잡아 먹도록 해주라는 경고이다.
특정 조건의 행만 추출하기 특정 조건의 행만 추출하고 싶을 땐 apply라는 함수를 쓰면 된다. 특정 조건을 만드는 함수를 정의하고 해당 함수명을 넣어주는데 이 때 함수 return 값을 True, False가 되게끔 선언 해주면 True인 행들만 추출된다. 예시 코드 df = df[df['value'].apply(is_numeric)]
merge_asof 사용하기 pandas.merge_asof()는 시간을 몇만배로 단축시킬 수 있는 굉장히 유용한 함수이다. 홈페이지에 보면, This is similar to a left-join except that we match on nearest key rather than equal keys. Both DataFrames must be sorted by the key 라고 나와있는데 설명처럼 left join과 유사하다. 파라미터도 join과 비슷하게 left, right, on, left_on, right_on, by, suffixes, tolerance 등이 있다. 기본적인 파라미터는 직관적으로 이해할 수 있다고 하면 merge_asof만의 특징적인 파라미터는 아래와 같다. 1. suffi..
엑셀의 여러 시트 한 번에 읽기 pandas로 엑셀을 읽을 때 default로는 첫번째 시트를 읽는다. 따라서 여러 시트를 한번에 읽고 싶을 때는 파라미터를 바꾸고 코드도 추가해야 한다. 예시 코드 df = pd.read_excel(path, sheet_name=None) df = pd.concat([value.assign(sheet_source=key) for key,value in df.items()], ignore_index=True) sheet_name 이라는 파라미터는 몇번째 시트를 읽을거냐 인데 따로 지정해주지 않으면 첫번째 시트를 읽기 때문에 전체를 읽어주기 위해선 None 으로 지정해줘야 한다. 그러나 이렇게 되면 데이터프레임 형태가 아닌 딕셔너리 형태가 되기 때문에 이를 concat 해줘..