파이썬 모르는 함수 3

qw4735·2023년 1월 9일
0

Python

목록 보기
1/10
post-custom-banner

isinstance(object, type) : 데이터 형식 확인 함수

isinstance(1, int) # 1이 int형인가?   # TRUE
isinstance('hi',str) # 'hi'가 스트링인가? # True
if not isinstance(number, int) # number가 int형이 아닌 경우, typeerror를 발생시켜라.
	raise TypeError("'number' is not an integer.")

DataFrame.sample() : random sampling from pandas DataFrame

import pandas as pd
DataFrame.sample(n, frac, replace, weights, random_state, axis) 
#n : 추출할 표본 개수 / frac : 추출할 표본 비율(0~1) / replace : 복원추출여부 / weight : 가중치부여(칼럼이름) / axis : 0(인덱스기준),1(칼럼기준)

DataFrame.infer_objects() : dtype이 object인 열에 대해서 적당한 dtype을 추론

먼저 str과 int가 혼합된 col1을 가진 DataFrame 객체를 만들어 dtype이 object인 열을 만들어 보자.

col1 = ['a','b', 3, 4]
df = pd.DataFrame({'col1':col1},index=['row1','row2','row3','row4'])
print(df)
>
     col1
row1    a
row2    b
row3    3
row4    4
print(df.dtypes)
>
col1    object
dtype: object

이제 df에서 형식이 int인 행만 남겨서 인덱싱을 한 뒤. dtype을 살펴보면, 여전히 dtype이 object인 것을 확인 할 수 있다.

df = df.iloc[2:]
print(df)
>
     col1
row3    3
row4    4
print(df.dtypes)
>
col1    object
dtype: object

이런 경우에 대해 infer_object는 가장 적당한 dtype을 제안하는 기능을 한다.

print(df.infer_objects().dtypes)
>
col1    int64
dtype: object

위와 같이 int형식만 남은 df의 col1 열에 대해 가장 적절한 dtype인 int64로 변환된 것을 확인할 수 있다.

reference : https://wikidocs.net/151425

post-custom-banner

0개의 댓글