Python/Pandas

[Pandas] 시리즈, 데이터프레임 ( Series, DataFrame )

죵욜이 2024. 12. 15. 22:44

PandasSeriesDataFarme 은 판다스 라이브러리의 핵심 데이터 구조입니다.

이 두가지는 데이터를 효율적으로 저장하고 처리하기 위해 설계되었습니다.


Series ( 시리즈 )

Series1차원 데이터 구조로, 배열(array)처럼 동작하지만, 인덱스(index)를 가질 수 있는것이 특징

데이터와 인덱스로 구성되어 있으며, Numpy 배열과 Python 딕셔너리의 장점을 결합한 구조

  • 엑셀의 한 열( column )
  • 인덱스(index) 와 데이터값(value) 이 쌍으로 구성

 

구조

index    value
0        10
1        20
2        30

 

생성

import pandas as pd

# 리스트로 시리즈 생성
s = pd.Series([10, 20, 30])

# 딕셔너리로 시리즈 생성 (인덱스와 값 지정)
s = pd.Series({'a': 10, 'b': 20, 'c': 30})

# 값과 인덱스를 직접 지정
s = pd.Series([10, 20, 30], index=['x', 'y', 'z'])

 

주요 속성과 함수

# 값 확인
print(s.values)  # [10, 20, 30]

# 인덱스 확인
print(s.index)  # Index(['x', 'y', 'z'], dtype='object')

# 특정 값 선택
print(s['x'])  # 10

# 조건으로 필터링
print(s[s > 15])  # y: 20, z: 30

DataFrame ( 데이터프레임 )

DataFrame 는 2차원 데이터 구조로, 행(row)과 열(column)로 구성된 테이블 형태의 데이터이다.

  • 2차원의 표 형태 데이터 구조
  • 엑셀의 전체 시트 (sheet) 를 생각
  • 여러개의 시리즈가 모여서 데이터프레임이 된다

 

구조

     col1  col2  col3
row1    1     4     7
row2    2     5     8
row3    3     6     9

 

생성

# 딕셔너리로 데이터프레임 생성
data = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Age': [25, 30, 35],
    'Score': [85, 90, 95]
}
df = pd.DataFrame(data)

# 리스트를 사용하여 생성
df = pd.DataFrame([[1, 2, 3], [4, 5, 6], [7, 8, 9]], columns=['A', 'B', 'C'], index=['X', 'Y', 'Z'])

 

주요 속성과 함수

# 데이터 크기 확인
print(df.shape)  # (3, 3) -> 3행, 3열

# 열 이름 확인
print(df.columns)  # Index(['Name', 'Age', 'Score'], dtype='object')

# 행 이름 확인
print(df.index)  # Index([0, 1, 2], dtype='int64')

# 데이터 확인
print(df.head())  # 상위 5개 행
print(df.tail(2))  # 하위 2개 행

'Python > Pandas' 카테고리의 다른 글

[Pandas] 데이터 접근 (at, loc)  (0) 2024.12.16
[Pandas] 데이터 미리보기 및 기본정보 확인  (1) 2024.12.15
[Pandas] inplace 옵션  (0) 2024.12.15
[Pandas] Pandas 기본  (11) 2024.12.07
[Pandas] Pandas란?  (3) 2024.12.07