인프런 커뮤니티 질문&답변

jinkyung park님의 프로필 이미지
jinkyung park

작성한 질문수

공공데이터로 파이썬 데이터 분석 시작하기

공원 데이터 로드시 데이터 타입 결정

해결된 질문

작성

·

315

1

csv 로 되어 있는 파일을 판다스의 데이터프레임으로 로드했을 때 데이터 타입은 판다스에서 임의로 결정하는 것인가요? 숫자라도 어떤 것은 float로 처리하고, 어떤 것은 object로 처리가 되어 질문드립니다. 선생님이 올려주신 csv 파일을 그대로 사용했는데 공원면적의 경우 float 가 아닌 object로 처리가 되어서 문의드립니다.

 

답변 3

1

jinkyung park님의 프로필 이미지
jinkyung park
질문자

빠른 답변 감사합니다..제가 선생님이 올려주신  csv 를 사용한 줄 알았는데,  공공데이터에서 데이터를 다시 다운로드했었나 봅니다.

에러 메시지를 확인해 보니 중간에 데이터 몇개가 콤마가 들어가 있어서 object 타입으로 인식했었나 봐요. 

변환하는 건 구글링 통해서 해결했습니다.

감사합니다!!

0

박조은님의 프로필 이미지
박조은
지식공유자

잘 해결되었다니 다행이에요. 화이팅입니다!

감사합니다 :)

0

박조은님의 프로필 이미지
박조은
지식공유자

안녕하세요.

pd.read_csv()를 통해 데이터를 불러올 때 판다스가 데이터의 타입을 정하게 됩니다.

read_csv의 옵션을 통해 데이터의 타입을 지정할 수도 있는데요.

면적인데 object로 불러왔다면 숫자만 있더라도 공백이나 보이지 않는 문자가 섞여 있을 수도 있습니다.

그래서 데이터 타입을 원하는 형태로 아파트 분양가 예제에서도 변경을 해주는 내용이 있었는데요.

pd.to_numeric() 을 통해 수치로 변경을 해줄 수 있습니다.

이 때도 어떤 문자가 내부에 섞여있는냐에 따라 변환이 안 될 수도 있는데 그때는 옵션을 사용해서 강제로 변환해 주는 방법이 있습니다. 이 방법은 아파트 분양가 예제에서 평당분양가격을 변환하는 내용을 보시면 좋을거 같아요.

또, 데이터 타입에 따라 메모리 용량을 많이 차지하기도 하는데요. 보통 문자열을 숫자로 변경해 주면 메모리 사용량이 줄어들게 됩니다.

수치데이터의 경우 기본적으로 float도 float64로 불러오게 되는데 길이에 따라 이 값도 조정을 해주면 메모리를 조금 덜 차지하게 됩니다. 하지만 실습하는데 메모리 문제가 없다면 기본값으로 사용하셔도 무방합니다.

jinkyung park님의 프로필 이미지
jinkyung park

작성한 질문수

질문하기