728x90
사용한 데이터
Dtypes
- 데이터 프레임이나 시리즈에 들어있는 값들의 타입
- DataFrame의 dtype -> df.dtypes / series의 dtype -> df.col.dtype (s의 유무)
# 데이터 프레임의 dtype
df.dtypes
#데이터 프레임의 특정 열을 지정 -> series형식
df.col.dtype
Auto 데이터 프레임에 적용
- DataFrame의 dtype : 각 col에 대해서 각각의 dtype과 DataFrame의 dtype을 확인
- Series의 dtype : 특정 열의 dtype만 확인
column의 type 변경
- 컬럼의 타입을 변경한다 (변경 가능한 타입이라면 데이터 프레임 전체를 일괄로 변경 가능)
- 모든 데이터 타입이 astype()으로 변경되는 것이 아님 (예: datetime은 int로 변경 불가능)
# 데이터 프레임 전체를 일괄 변경
df.astype('float')
# col을 지정해서 타입 변경
df.col.astype('float')
# 변수에 변환 값을 저장
df_temp = df.col.astype('float')
# 원본에 변환값을 저장
df.col.astype('float', inplace=True)
Auto DataFrame에 적용
- Auto 전체를 float로 변경 -> 'object' type을 가지는 열은 변경 불가(에러 발생)
- Auto의 'name', 'hoursepower'열을 제외하고 float로 변환
- Auto의 일부 열인 'origin'을 'object' type으로 변경 (int64 -> object)
- astype() 으로 타입이 변환된 열은 원본에 영향을 미치지 않음
- 새로운 변수에 저장 or astype() method에 inplace=True인자를 추가하여 변환값 저장
Missing data
- Nan (Not a number) : 결측 값을 나타낸다 -> dtype : float 64
- pandas는 여러가지 결측치 처리 방법을 제공한다
결측치 확인
# 특정 열의 nan값이 들어있는 행을 조회 -> dataframe 형식으로
df[pd.isnull(df.col_name1)]
# 각 열의 결측치 갯수를 확인
df.isnull().sum()
결측치 처리
방법1) 해당 행 제거하기
df.dropna()
방법2) nan값을 가지는 자리에 특정 값으로 채우기
df.fillna('특정 값')
Replacing data
- 데이터 프레임의 특정 값을 업데이트 해야하는 경우
- 특정 값으로 결측치를 채워넣고 채워 넣을 수 있는 경우 replace() method를 사용하여 값을 업데이트 할 수 있다
df.col_name1.replace('A','B')
728x90
반응형
'Python > Pandas' 카테고리의 다른 글
[kaggle learn geopandas] Your First Map (1) | 2024.06.04 |
---|---|
[kaggle learn pandas] Renaming and Combining (0) | 2024.05.31 |
[kaggle learn pandas] Grouping and Sorting (0) | 2024.05.30 |
[kaggle learn pandas] Summary Functions and Maps (0) | 2024.05.27 |
[kaggle learn pandas] Indexing, Selecting & Assigning (0) | 2024.05.27 |