< Pandas Dataframe >
레이블로 생성하기
# 판다스의 2차원 데이터 처리는, 데이터 프레임으로 한다. (DataFrame)
# 실제 데이터 분석에서는 csv 파일을 판다스의 데이터 프레임으로 읽어와서 작업한다.
# 연습을 위해 예제로 데이터 프레임을 생성하여 분석해 보자.
import pandas as pd
# We create a dictionary of Pandas Series
items = {'Bob' : pd.Series(data = [245, 25, 55], index = ['bike', 'pants', 'watch']),
'Alice' : pd.Series(data = [40, 110, 500, 45], index = ['book', 'glasses', 'bike', 'pants'])}
df = pd.DataFrame(data= items)
df
ㄴ NaN은 Not a Number 로 데이터가 없음을 뜻함 (결치값)
판다스에서는 자동으로 NaN(난, 낸 이라고 칭함)으로 채워준다.
< 용어정리 >
# 좌측의 진한 글씨 : 인덱스 (index) => 사람용 index!!! / 컴퓨터용 index와는 다른 개념이다.
# 상단의 진한 글씨 : 컬럼 (column)
# 안쪽에 위치한 데이터 : 데이터 값 (values)
df.index
Index(['bike', 'book', 'glasses', 'pants', 'watch'], dtype='object')
df.columns
Index(['Bob', 'Alice'], dtype='object')
df.values
array([[245., 500.],
[ nan, 40.],
[ nan, 110.],
[ 25., 45.],
[ 55., nan]])
# 모양 확인 데이터의 개수는 행의 개수를 의미한다. 즉 해당 데이터의 개수는 5 개 컬럼은 2 개
df.shape
(5, 2)
# 차원은?
df.ndim
2
# 컬럼에 대한 요약 정보 제공 (인덱스의 개수, 각 컬럼 이름, 비결측값(non-null count), 데이터 타입 표시
df.info()
<class 'pandas.core.frame.DataFrame'>
Index: 5 entries, bike to watch
Data columns (total 2 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 Bob 3 non-null float64
1 Alice 4 non-null float64
dtypes: float64(2)
memory usage: 120.0+ bytes
ㄴ info 정보에 #은 컴퓨터용 index를 뜻한다.
< 파일로 데이터를 읽어오기 >
# csv => Comma Separated values (국제적으로 사용하는 데이터 확장자 표준)
# 데이터를 불러올때 상위 폴더로 가야 하면 pd.read_csv('../') 사용 => 리눅스에서 사용하던걸 가져옴
# 메모리로 올려야 컴퓨터가 CPU로 작업할수 있다. => 작업이 끝나면 파일로 저장
# 해당 스크랩에서는 data 라는 폴더에 test3.csv 파일을 이용하여 시행함
# pd.read_csv() 를 사용하여 원하는 경로에 데이터 불러오기
pd.read_csv('../data/test.csv')
# 반대로 가공이 완료되었다고 가정하고 해당 데이터를 파일로 저장하고 싶을땐
df2 = pd.read_csv('../data/test.csv') => 가공완료된 데이터를 변수로 지정
df2.to_csv('../data/test3.csv')
* 'test3' 이라는 임의의 명칭으로 저장
** data 폴더안에 test3.csv 파일 저장 확인
다음 게시글에서 계속
'PYTHON LIBRARY > Pandas Library' 카테고리의 다른 글
Python Pandas로 결측치 데이터 처리하기: NaN 처리 isna(), notna(), dropna(), fillna() (0) | 2024.04.11 |
---|---|
Python Pandas 데이터프레임 조작 : 행/열 삭제부터 이름/타입 변경까지 drop() 함수 , rename({}) 함수 (0) | 2024.04.10 |
Python Pandas로 데이터 다루기 : 데이터 액서스 .loc, .iloc 및 기본 인덱싱 방법 (0) | 2024.04.09 |
Python Pandas로 데이터 처리하기 : 시리즈의 레이블 접근과 산술 연산 (0) | 2024.04.08 |
Python Pandas로 시작하는 데이터 분석 : Series 데이터 생성 pd.Series() (2) | 2024.04.08 |