Pandas 의 헷 갈 리 기 쉬 운 줄 선택 과 열 선택 을 자세히 설명 합 니 다.
본 논문 의 데이터 출처:https://github.com/fivethirtyeight/data/tree/master/fandango
import pandas as pd
fandango = pd.read_csv('fandango_score_comparison.csv')
원본 데 이 터 는 다음 과 같 습 니 다(일부분 을 캡 처 했 습 니 다)줄 선택
Pandas 줄 선택 은 보통 세 가지 방법 이 있 습 니 다.
첫 번 째,python 과 유사 한 목록 절편 사용 하기
n = fandango[1:3]
결 과 를 보면 python 의 목록 절편 과 마찬가지 로 색인 번 호 는 0 부터 색인 번호 1 과 2 의 데 이 터 를 선택 하 였 습 니 다(3 포함 하지 않 음).
두 번 째,지정 한 색인 에 따라 한 줄 또는 여러 줄 을 선택 하고 loc[]방법 을 사용 합 니 다.
o = fandango.loc[1]
p = fandango.loc[1:3]
o 는 Series 입 니 다.색인 번호 가 1 인 줄 의 데 이 터 를 선 택 했 습 니 다.p.첫 번 째 목록 색인 과 가장 큰 차이 점 은 색인 번호 가 3 인 줄 의 데 이 터 를 포함 하고 있 습 니 다.
u = fandango.loc[[1,3]]
여 기 는 색인 번호 에 따라 불 연속 줄 을 선택 합 니 다.
세 번 째,지 정 된 위치 에 따라 한 줄 을 많이 선택 하고 iloc[]방법 을 사용 합 니 다.
위의 데이터 에서 iloc[]와 loc[]를 사용 하 는 효 과 는 같 습 니 다.색인 번 호 는 모두 0 에서 시작 되 고 계속 되 기 때문에 지금 은 색인 번호 가 1 과 2 인 이 두 줄 을 삭제 하 겠 습 니 다.
fandango_drop = fandango.drop([1,2], axis=0)
두 줄 의 데 이 터 를 확실히 삭제 한 것 을 볼 수 있다.
이때 나 는 여전히 loc[]로 줄 번호 가 2 인 줄 을 색인 하면 오류 가 발생 할 것 이다.
s = fandango_drop.loc[2]
하지만 저 는 iloc[]를 사용 하여 진행 하 겠 습 니 다.
t = fandango_drop.iloc[2]
보 셨 죠?iloc[2]는 세 번 째 줄 의 데 이 터 를 선택 한 다 는 뜻 입 니 다.즉,색인 번호 가 4 인 줄 의 데 이 터 를 선택 한 다 는 뜻 입 니 다.iloc[]의 계산 도 0 에서 시작 되 기 때문에 iloc[]는 데 이 터 를 선별 한 후에 색인 번호 가 원래 와 일치 하지 않 는 상황 을 초래 합 니 다.
loc[]와 iloc[]방법 사이 에 또 하나의 큰 차이 가 있 습 니 다.바로 loc[]의 매개 변 수 는 대응 하 는 색인 값 이면 됩 니 다.그래서 매개 변 수 는 정수 일 수도 있 고 문자열 일 수도 있 습 니 다.한편,iloc[]의 매개 변 수 는 몇 번 째 줄 의 데 이 터 를 표시 하기 때문에 정수 일 수 밖 에 없다.
열 선택
열 선택 은 비교적 간단 합 니 다.열 이름 을 직접 전달 하면 됩 니 다.여러 열의 데이터 가 있 으 면 열 이름 이나 열의 색인 번 호 를 따로 지적 해 야 합 니 다.
첫 번 째,단일 열 을 선택 하고 영화 이름 의 열 을 선택 했다.
q = fandango['FILM']
두 번 째,지정 한 열 이름 을 통 해 다 열 을 선택 합 니 다.
r = fandango[['FILM','Metacritic']]
세 번 째,헷 갈 리 기 쉬 운 것 은 열 색인 번 호 를 통 해 여러 열 을 선택 합 니 다.
v = fandango[[0,1,2]]
사실 열 에 도 색인 번호 가 있 습 니 다.여 기 를 보고 묻 고 싶 습 니 다.그럼 저 는 앞의 5 열 을 선택해 야 합 니까?나 는 긴 목록 을 쓰 고 싶 지 않 고,이 5 열의 이름 을 하나씩 쓰 고 싶 지 않 은 데,슬라이스 를 사용 할 수 있 습 니까?
x = fandango[[0:5]]
사실은 이것 이 안 된다 는 것 을 증명 한다.더 좋 은 방법 은 매개 변수 에 목록 을 구축 하 는 것 이다.
w = fandango[list(range(5))]
더 많은 참고 자료:http://pandas.pydata.org/pandas-docs/version/0.17.0/api.html이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Pandas의 DataFrame 스왑 열 순서 방법 구현1. DataFrame 열 레이블 가져오기 ['ps_state-stopped', 'ps_state-running', 'ps_state-blocked', 'ps_state-paging', 'ps_state-sleepi...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.