데이터사이언스
5-1. DataFrameIndexing
유니진
2023. 1. 24. 12:08
dataframe 에서 하나의 값만 받아오기
ex. 하나의 값 = iphone 8 메모리
import pandas as pd
iphone_df = pd.read_csv ('data/iphone.csv', index_col = 0)
iphone_df
- 출력
iphone_df.loc ['iphone 8', '메모리'] #파라미터 row, column 순으로
- 출력 : 2GB
iphone_df.loc ['iphone 8', '가격']
- 출력 : 오류발생
- 이유 : 가격이라는 column 이 존재하지 않기 때문
#row 하나 통째로 출력하기
#ex - iphone X
iphone_df.loc ['iphone X', : ] # 콜론(:) 의 의미 : 처음부터 끝까지
iphone_df.loc ['iphone X' ] # 동일한 결과
- 출력
# 데이터 타입 확인
type (iphone_df.loc [ 'iphone X' ]
- 출력 : pandas.core.series.Series
- Series : padas 의 일차원 자료형으로 iphone X 데이터 한 줄에 해당하는 데이터 타입을 확인했으므로 맞는 확인
# column 하나 통째로 출력하기
iphone_df.loc [ :, '출시일' ] # column 출시일에 대한 모든 정보를 보고 싶다
iphone_df.loc [ '출시일' ] #동일한 결과
- 출력
# 데이터 타입 확인
type (iphone_df ("출시일')
- 출력 : pandas.core.series.Series
여러 줄의 데이터 받아오기
ex. rows = iphone X 와 8
- iphone X 와 iphone 8 에 대한 데이터 받아오기
iphone_df.loc [ [ 'ipone X', 'iphone 8' ] ]
- 원하는 값들을 리스트로 넘겨준다.
- 출력
# 데이터 타입 확인
type (iphone_df.loc [ [ 'iphone X', 'iphone 8' ] ]
- 출력 : pandas.core.frame.DataFrame
여러 행의 데이터 가져오기
- 하나의 column 가져오기
iphone_df ['Face ID']
- 여러 column 가져오기
iphone_df [ [ 'Face ID', '출시일', '메모리' ] ]
- 대괄호 안에 리스트를 만들고, 원하는 column 이름을 모두 적는다.
- 출력
- Slicing
iphone_df.loc [ 'iphone 8' : 'iphone XS' ]
- 출력 : iphone 8 부터 XS 까지만
iphone_df.loc [ : 'iphone XS' ]
- 출력 : 처음부터 iphone XS 까지
[Column Slicing]
- row 는 위와 같이 간단하게 slicing 가능하지만 column 은 불가능
- 다른 방법 사용
iphone_df.loc [ : , '메모리', : 'Face ID' ]
- 출력 : 모든 메모리 (:) 중에서 '메모리' column 부터 'Face ID' column까지
iphone_df.loc [ 'iphone 7' : 'iphone X', '메모리' : 'Face ID' ] #row / column
- 출력