본문 바로가기
Python/데이터 분석

[DataFrame] DataFrame - 타입 변경 함수

by snow_white 2022. 4. 2.

astype() : 타입 변경 후 재대입 필수

 

float형 → int 형으로 변환하면 소수점 아래 자리는 절삭

df3.info()
'''
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 245 entries, 0 to 244
Data columns (total 7 columns):
 #   Column      Non-Null Count  Dtype  
---  ------      --------------  -----  
 0   total_bill  245 non-null    float64
 1   tip         244 non-null    float64
 2   sex         244 non-null    object 
 3   smoker      244 non-null    object 
 4   day         244 non-null    object 
 5   time        244 non-null    object 
 6   size        244 non-null    float64
dtypes: float64(3), object(4)
memory usage: 13.5+ KB
'''
# int형으로 형변환 하여 상위 5개만 출력
# df3. 보다는 df3['칼럼명']으로 조회하자  df.astype({'total_bill':'int'})
df3['total_bill'].astype('int').head() # astype() 47.9의 경우 소수점 아래 자리는 절삭
df3['total_bill'].astype(np.int32).head()
'''
0    16
1    10
2    21
3    23
4    24
Name: total_bill, dtype: int32
'''

# 위에서 형변환하였다고 해서 원본에 바로 적용되지 않는다. 재대입 해줘야 함
df3['total_bill'].head()

타입 변경 후 dataframe 원본에 재대입 필수

# int32로 형변환하여 재대입해줘야 원본 변경됨
df3['total_bill'] = df3['total_bill'].astype(np.int32)
df3['total_bill'].head()
'''
0    16
1    10
2    21
3    23
4    24
Name: total_bill, dtype: int32
'''

댓글