[데이터 사이언스/문법] DataFrame 이란?
2024. 8. 15. 19:19ㆍAI & DS/머신러닝
DataFrame은 pandas 라이브러리에서 제공하는 2차원 데이터 구조로,
행(row)과 열(column)로 구성된 데이터 테이블을 나타냅니다.
DataFrame은 엑셀 스프레드시트와 비슷한 형식으로,
데이터를 다루고 분석하기에 매우 유용합니다.
pandas의 핵심 데이터 구조 중 하나로,
다양한 데이터 소스로부터 데이터를 로드하고 조작할 수 있습니다.
주요 특징
- 행과 열로 구성:
- DataFrame은 각기 다른 데이터 타입을 가질 수 있는 열(column)들로 이루어져 있습니다.
- 각 행(row)은 서로 다른 데이터 포인트를 나타냅니다.
- 레이블(인덱스):
- 각 행과 열은 레이블을 가질 수 있습니다.
- 기본적으로 행은 정수 인덱스를 가지지만, 특정 열을 인덱스로 설정할 수도 있습니다.
- 다양한 데이터 소스로부터 생성 가능:
- CSV 파일, 엑셀 파일, 데이터베이스, 웹 API 등 다양한 소스로부터 데이터를 로드할 수 있습니다.
예제
import pandas as pd
# 데이터프레임 생성
data = {
'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40],
'City': ['New York', 'Los Angeles', 'Chicago', 'Houston']
}
df = pd.DataFrame(data)
# 데이터프레임 출력
print(df)
Name Age City
0 Alice 25 New York
1 Bob 30 Los Angeles
2 Charlie 35 Chicago
3 David 40 Houston
주요 기능
데이터 로드 및 저장:
- CSV 파일 로드: pd.read_csv('data.csv')
- CSV 파일 저장: df.to_csv('data.csv', index=False)
데이터 선택 및 필터링:
- 열 선택: df['Name']
- 행 선택: df.loc[0] 또는 df.iloc[0]
- 조건 필터링: df[df['Age'] > 30]
데이터 조작:
- 열 추가: df['Salary'] = [50000, 60000, 70000, 80000]
- 행 추가: df.append({'Name': 'Eve', 'Age': 28, 'City': 'Phoenix'}, ignore_index=True)
통계 및 요약:
- 요약 통계: df.describe()
- 특정 열의 평균: df['Age'].mean()
데이터 정렬 및 그룹화:
- 정렬: df.sort_values(by='Age')
- 그룹화: df.groupby('City').mean()
'AI & DS > 머신러닝' 카테고리의 다른 글
[데이터 사이언스/개념] 표준화의 장점 및 데이터 scale 차이에 따른 영향 (0) | 2024.08.15 |
---|---|
[데이터 사이언스/개념/문법] pipeline이란? (0) | 2024.08.15 |
[데이터 사이언스/문법] Python 라이브러리 - tqdm 이란? (0) | 2024.08.14 |
[머신러닝] 주식 종목 추천 시스템 - (3) 데이터 전처리 & k-NN 모델 최근접 이웃 찾기 (0) | 2024.08.14 |
[머신러닝] 주식 종목 추천 시스템 - (2) 데이터 수집 (0) | 2024.08.14 |