[Pandas] 데이터 분석을 위한 판다스 사용법 - 1. 자료구조
2023. 7. 5. 22:32
반응형
Pandas
파이썬에서 데이터 분석에 많이 이용함, 3가지 형태의 자료 구조와 연산 지원
자료 구조
- Series(1차원)
- DataFrame(2차원)
- Panel(3차원) -> 현재는 잘 사용되지 않음. DataFrame을 이용하여 다루는 것을 권장
연산
- 데이터 선택
- 데이터 가공
- 데이터 분석
- 데이터 편집
Pandas 라이브러리 Import
# import
import numpy as np
import pandas as pd
1. Series
- 1차원 자료구조
- 리스트, 딕셔너리, 튜플, Scalar Value로부터 생성 가능
- numpy의 ndarray로부터 생성 가능
pd.Series(data, index)
d = {'a': 1, 'b' : 2, 'c': 3}
ser = pd.Series(data=d, index=['a', 'b', 'c'])
ser
ser = pd.Series(np.random.rand(3), index=['a', 'b', 'c'])
ser
2. Dataframe
- 2차원 자료구조
- 인덱스와 컬럼으로 구성
- Series Dictionary 혹은 2D ndarray등을 통해 생성
pd.DataFrame(2DArray, index, columns)
2-1. Numpy 2D Array로부터 생성하기
컬럼의 인덱스를 주지 않고 생성
df = pd.DataFrame(np.random.rand(10,10))
df
컬럼의 인덱스를 주고 생성
# index(행) : 데이터 정보
# column(열) : A, B, C
index = pd.date_range('2020-01-01', periods=10, freq='D')
df = pd.DataFrame(
np.random.rand(10, 3), index, columns=['A', 'B', 'C']
)
df
리스트로부터 생성(컬럼 지정)
list_a = [1.0, 3.0, 2.0, 6.0, 5.0]
# DataFrame의 정방 행렬 Element의 수를 맞춰주어야함
df = pd.DataFrame(
{
"A": list_a,
"B": [3.0, 2.0, 1.0, 4.0, 7.0],
"C": [9.0, 8.0, 12.0, np.nan, 17.0] #np.nan은 결측값을 의미한다
}
)
df
리스트로부터 생성(컬럼과 인덱스 지정)
# Column과 index를 지정
df = pd.DataFrame(
[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0],
[6.0, 5.0, 4.0, 3.0, 2.0, 1.0],
[16.0, 15.0, 14.0, 13.0, 12.0, 11.0]],
columns = ['A', 'B', 'C', 'D', 'E', 'F'],
index = ['a', 'b', 'c']
)
df
2-2. Series로부터 생성하기
시리즈로부터 생성하면 행렬이 맞지 않더라도 결측값으로 간주 후 DataFrame을 생성함
df = pd.DataFrame(
{
"one": pd.Series(np.random.rand(3), index=['a', 'b', 'c']),
"two": pd.Series(np.random.rand(4), index=['a', 'b', 'c', 'd']),
"three": pd.Series(np.random.rand(4), index=['a', 'b', 'c', 'd']),
}
)
df
반응형
'Data Science > 데이터분석 (Spark)' 카테고리의 다른 글
[Pandas] 데이터 분석을 위한 판다스 사용법 - 6. 데이터 편집 (0) | 2023.07.06 |
---|---|
[Pandas] 데이터 분석을 위한 판다스 사용법 - 5. 데이터 분석 (0) | 2023.07.06 |
[Pandas] 데이터 분석을 위한 판다스 사용법 - 4. 데이터 가공 : 자료구조와 원소 변경하기 (0) | 2023.07.05 |
[Pandas] 데이터 분석을 위한 판다스 사용법 - 3. 데이터 선택 : 조건과 필터 (0) | 2023.07.05 |
[Pandas] 데이터 분석을 위한 판다스 사용법 - 2. 데이터 선택 : 행과 열 선택하기 (0) | 2023.07.05 |