#옵션 행 건너뛰기 : skiprows = [1,3,5] -> 리스트에 있는 행을 건너뜀 읽을 행 수 : nrows -> skiprows는 컬럼 헤더를 하나의 행으로 파악 -> nrows는 첫 행을 컬럼 헤더로 설정하고 이후부터 추출
5. 데이터 확인
#dataframe 확인 : df.describe() / df.info() # 상위/하위 행 확인 : df.head() / df.tail()
# index 확인 : df.index #column 확인 : df.columns # 값들 보기 : df.values
#행열 확인 : df.shape
#series 확인 기초통계 : describe() / info() 최소 : min() 최대 : max() 큰 사람 순서대로 n명 : nlargest(n) 평균 : mean() 합계 : sum() null 값 제외한 유효데이터 개수 : count() 고유값 배열 : unique()
ex)
6. 데이터 선택
> 컬럼 선택 : df[['키','이름']]
> 정수를 통한 인덱싱 df [ df.columns[0] ] # df['이름']과 동일한 동작 df [ df.columns[-1] ] # 맨 우측 맨 끝에 있는 값을 가져옴
>슬라이싱(행에 대해서 적용) : 하나의 열에서 몇가지 행만 끊어서 가져옴
df [ '영어' ] [ 0 : 5 ] #0에서 4까지의 데이터를 가져옴
df [ [ '이름', '키' ] ] [ :3 ] #이름 / 키 열의 0-2행의 데이터
> 데이터 선택(loc) : 이름을 이용해서 원하는 row에서 원하는 col을 선택
df.loc [ '1번' ] #index 1번에 해당하는 전체 데이터
df.loc [ '1번' , '국어' ] #index 1번에 해당하는 데이터 중 국어 데이터
df.loc[ '1번' : '5번' , "국어" : "사회" ]
> 데이터 선택(iloc) : integer -> 정수 위치를 가지고 원하는 row에서 원하는 column
df.iloc[0:5] #0-4번째 인덱스까지 정보 슬라이스
#슬라이싱 ->정수의 경우에는 대괄호가 추가적으로 필요x
df.iloc[0:5,3:8]
7. 데이터 선택(조건)
조건에 해당하는 데이터 선택
#조건을 변수에 넣어줌 -> 그 조건 변수를 대괄호 안에 넣어주기 filt= (df['키'] >=185) df[filt] df[~filt] #여집합 구하기
# loc 활용 : 조건으로 행 필터링 df.loc [ filt , ['이름' , '수학' , '과학' ] ] #키가 185 이상인 학생들의 이름,수학,과학 데이터
#다양한 조건 - & :그리고 - | : or
df.loc[(df['키']<170) | (df['키']>200)]
# str 함수 #소문자로 변환.str.lower() #대문자로 변환.str.upper() #.str. startswith() :~으로 시작하는 것 #.str. contains() :~가 포함되는 것 #.str. endswith() :~으로 시작하는 것