- pandas에는 크게 2가지 형태의 데이터 형식이 있습니다.
- 시리즈(Series)와 데이터프레임(DataFrame)입니다.
- 시리즈는 1차원 배열의 개념이며 데이터프레임은 2차원 배열의 개념을 지니고 있습니다.
- Pandas의 시리즈는 1차원 배열의 형태와 비슷한데 복수의 행(row)으로 이루어진 하나의 열(column)의 구조를 지니고 있습니다.
- 색인(index)을 가지고 원하는 데이터에 접근할 수 있습니다.
- index를 지정하지 않으면 0부터 1씩 증가하는 방식으로 자동적으로 지정을 해줍니다.
- 색인을 원하는 이름으로 입력하면 지정한대로 출력됩니다.
- 'index' 키워드를 사용하며 위와 같이 입력 데이터를 작성하면 됩니다.
- Pandas의 시리즈 형식으로 변환된 데이터는 위와 같이 색인을 나열하여 원하는 값들을 출력할 수 있습니다.
- 위와 같이 index를 사용하면 만들어진 시리즈 데이터에서 인덱스만을 출력할 수 있습니다.
- 위와 같이 values를 사용하면 만들어진 시리즈 데이터에서 값들만을 출력할 수 있습니다.
- sorted( ) 함수를 사용하여 인덱스나 값들을 정렬할 수 있습니다.
- x와 y에 공통된 인덱스가 존재해야 더할 수 있으므로 광주와 대전은 NaN으로 표시됩니다.
- Pandas의 1차원 배열 형식인 Series 객체로부터 유일한 값들을 반환하는 메서드를 사용합니다.
- 숫자뿐만 아니라 문자열도 똑같이 작동합니다.
- 사전 형식의 데이터를 Pandas의 Series 형식으로 변환할 수 있습니다.
- Pandas는 index로 슬라이싱이 가능합니다.
- 앞에서 배운 리스트의 개념에 따르면 a 변수의 2번 인덱스에 저장된 값인 '수빈'이 출력되어야 하는데, 에러가 발생합니다.
- Pandas의 Series 기본 구조에서는 이름 앞에 인덱스 번호가 정해져 있습니다.
- 앞에서 슬라이싱할 때에 이들의 값들까지 삭제된 것입니다.
- Series 형식 데이터에서의 인덱스 번호란 자체적으로 내포하고 있는 'index'를 의미하며 일반 배열에서의 인덱스와 다릅니다.
- Dataframe은 2차원 배열의 개념을 가지고 있으며 행과 열로 구성되어 있습니다.
- 일반적으로 열(Column)에 대한 각각의 이름을 부여합니다.
- name 칼럼의 내용만 출력하는 방법입니다.
- 위의 방법으로는 특정한 위치의 내용들을 출력하기 어렵습니다.
- Pandas에는 iloc( ) 메서드를 사용하여 특정한 행이나 위치의 내용들을 지정하여 출력할 수 있습니다.
- 1차원 배열을 이용하면 특정한 행의 값들을 출력할 수 있습니다.
- data.iloc[1]는 1번 행의 값을 출력하기 위한 명령문입니다.
- data.iloc[:, -1]는 모든 행의 마지막 데이터만을 출력하는 명령문입니다.
- head( )와 tail( )을 사용하면 처음이나 마지막 행의 결과를 출력할 수 있습니다.
- head( ) 메서드에서 괄호 안에 입력값을 넣으면 첫 행부터 입력한 수만큼의 행이 출력이 되며, 입력하지 않으면 첫 5줄의 행을 출력하게되며, tail( )에서도 같은 원리로 작동합니다.
- Pandas의 DataFrame에서 특정 항목만 선택하여 저장하거나 출력할 수 있습니다.
- 위에서는 boolean 값을 이용하여 True인 것은 선택하고 False인 것은 선택하지 않도록 설정하는 예입니다.
- DataFrame 형식으로 구성된 data는 2개의 칼럼을 가지고 있으며 첫 칼럼의 이름은 'First', 두 번째 칼럼의 이름은 'Second'입니다.
- bools의 1번, 2번, 4번 인덱스 위치의 값들만 True이므로 data의 Second 칼럼의 해당 값들만 출력된 것을 확인할 수 있습니다.
- Pandas에서는 데이터의 값을 수학적인 메서드를 이용하여 계산할 수 있습니다.
- Pandas의 대표적인 데이터형
- 1. Objects : 문자 또는 문자열형
- 2. Int64 : 정수형
- 3. Float64 : 실수형
- 위 코드를 실행하면 data라는 Pandas 형식의 테이블이 출력됩니다.
- Pandas의 형식을 출력해야 하므로 여기에서는 print( ) 함수를 사용하지 않습니다.
- 위 코드는 'First' 칼럼의 내용을 정수에서 실수형으로 모두 수정하는 명령문입니다.
- astype( ) 메서드를 사용하여 원하는 데이터 타입을 'float'와 같이 입력하면 됩니다.
- 외부의 파일을 가져와서 Pandas 형태로 저장하여 사용할 수도 있습니다.
- 엑셀의 csv파일이나 텍스트가 저장된 txt 파일 등을 가지고 올 수 있습니다.