본문 바로가기

CS?/pandas

(3)
[Python/pandas] 컬럼마다 적절한 데이터 형태로 값을 바꾸고 싶을 때 - infer_objects() 데이터프레임에서 입력한 값과 dtype을 통해 확인한 값이 다를 때가 있다. 그 중에서도 object 타입으로 되어 있을 때, 데이터프레임 infer_objects()가 적절한 데이터타입을 추천해준다. (사실 추천이라기 보단 추측해서 제안하는 것이다) DataFrame.infer_objects() 리턴값 입력한 컬럼의 변환된 데이터 타입이 반환된다. 예시로 살펴보자! df = pd.DataFrame({'int': ["a",1, 2,]}) df 먼저 문자와 숫자가 섞인 int라는 이름의 컬럼을 데이터프레임에 만든다. df.iloc[1:].dtypes a가 있는 행을 제외한 나머지 두 행만 뽑아 데이터 타입을 검색해보면 int가 아닌 object 타입으로 설정된 것을 볼 수 있다. df.iloc[1:].in..
[Pandas] 데이터 프레임에서 원하는 데이터 타입 컬럼만 추출하기 - select_dtypes 데이터 프레임 컬럼 추출 작업을 하다보면 원하는 데이터 타입의 컬럼을 뽑고 싶을 때가 있다. 그럴 때 사용할 수 있는 것이 "select_dtypes"이다. DataFrame.select_dtypes(include=None, exclude=None) 파라미터 : include, exclude 포함하거나 (include), 제외할 (exclude) 데이터 타입을 작성한다. 두 값 중 하나는 무조건 할당되어야 하며, 중복될 수 없다. 리턴값 : Dataframe 파라미터 조건에 맞는 컬럼이 데이터프레임으로 만들어져 데이터프레임 타입으로 반환된다. 에러 발생 1. 파라미터로 아무 값도 주지 않았을 때 (include와 exclude 모두 지정하지 않은 채 select_dtype()으로 실행했을 때) 2. in..
[pandas] Dataframe shift()로 다음 행에서 현재 행에 값 가져오기 (행 위치 바꾸기) 데이터 정제를 하다보면 다음 행의 값을 현재 행에 추가해야 하는 일이 생긴다. unique_id time next_time 1 10-28 ?? 2 10-29 ?? 3 10-29 ??? 이럴 때 사용하는게 shift 메소드이다! shift - 데이터프레임에 적용하여 원하는 수만큼 행/열을 이동할 수 있다. - 사용하는 파라미터 periods : 숫자로 입력하며, 이동할 크기를 지정한다 (필수) freq : 인덱스 이동 시키고 싶을 때 입력 양수 : 위의 값 음수 : 아래의 값 axis : 행(axis=0)으로 할지, 열(axis=1)로 할지 지정 fill_values : 빈칸에 채울 값 (결측치 값) 그래서 데이터프레임에서 다음행을 가져오기 위해서는 periods의 값을 -1로 하게 될 경우 원하는 결과를..