Data Science/python

1. Viewing data

jay3108 2021. 12. 22. 00:40

방대한 내용에 배웠던 내용은 자꾸 헷갈리고 손코딩 실력도 늘지 않고 있다.

이에 혼자 실습하면서 깊게 고민도 해보고 또 각종 메서드를 정리하기 위해 시작하였다.

링크의 10 minutes to pandas 에서 소개하는 목차를 따라가되 데이터 셋은 kaggle의 타이타닉 train 데이터 셋을 사용하여 실제로 직접 적용하고 이해를 넓히고자 한다.

헷갈리지 않는 내용은 짧게 코드만 정리하고 고민을 했던 부분과 중요하다고 생각되는 항목은 캡처를 통해 흔적을 남겨 놓으려 한다.

또한 메서드 자체를 독립적으로 포스팅할 필요가 있다고 생각되면 이 포스팅에서 가져와 살을 붙이는 방식을 취한다.

 

10 minutes to pandas — pandas 1.3.5 documentation

Note While standard Python / NumPy expressions for selecting and setting are intuitive and come in handy for interactive work, for production code, we recommend the optimized pandas data access methods, .at, .iat, .loc and .iloc.

pandas.pydata.org

 

df.head() : 상위 data / default : 5

df.tail() : 하위 data / default : 5

df.index : 인덱스 목록 

df.columns : 열 정보

df.dtypes : 컬럼 타입 출력

 

df.칼럼명 : 해당 칼럼 출력 (시리즈)

df['칼럼명'] : 해당 칼럼 출력 (시리즈)

df[['칼럼명1','칼럼명2','칼럼명3']] : 다수의 칼럼으로 dataframe 출력

 * 슬라이싱과 헷갈리지 말것

df.values : .각 행의 값들을 array로 나타내기

df.T :  Transpose -> 행과열을 바꿈

 

df.sort_index(axis=0, ascending=True).head() : index 정렬 -> 주어진 축을 따라 정렬 수행

 - axis : 0 -> 행의 인덱스를 정렬(default) / 1-> 열의 인덱스를 정렬(문자열도)

 - ascending : True -> 오름차순 / False -> 내림차순

 

* 행의 index 정렬

* 열의 index 정렬 : Age, Cabin, Embarked,......

 

df.sort_values('컬럼명',ascending=False).head() : 컬럼 값 기준으로 정렬 -> 어떤 컬럼 기준인지 명시해야함

 - 자주 쓰이는 중요한 메서드

 - reset_index(drop=True) 와 자주쓰인다.

* 여러 컬럼을 기준으로 지정 가능

- 리스트 형태로 컬럼명에 넣어준다. /ascending 옵션도 같은 크기로 지정해야함

- 첫번째 기준이 먼저 적용되고 다음으로 두번째 기준이 적용 (ascending 옵션에 따라)

    -> 내림 차순에 따라 male이 먼저 정렬되고 sex가 같은 데이터 중 Fare가 높은 순서로 정렬된다. 

reset_index(drop=True)

- 위와 같이 데이터를 정렬 혹은 추출 후에 기존의 index를 리셋하는 메서드

- drop 인수는 기존의 index 값을 제거 (더 이상 과거의 index가 필요 없음)