CSE/Data Science

[데이터과학] Pandas and Tables

minkylee 2024. 4. 23. 23:27

판다스 (Pandas)는 파이썬 데이터 처리를 위한 라이브러리이다.

파이썬을 이용한 데이터 분석과 같은 작업에서 필수 라이브러리로 알려져 있다.

Pandas라는 이름은 "Panel Data" 와 "Python Data Analysis" 의 합성어이다.

 

  • NumPy
    • 저수준 데이터 구조(np.array)
    • 대규모 다차원 배열 및 행렬 지원
    • 광범위한 수학적 배열 연산
  • Pandas
    • NumPy 기반으로 만들어진 RDMS(관계형 데이터 베이스)_Table 형태의 데이터 셋이다.
    • 2차원 Table 형태로 다양한 칼럼(차원)을 관리할 수 있도록 만들어졌다.

Dependencies: The Python Stack

 

 

 

시리즈(Series)

 

시리즈 클래스는 1차원 배열의 값(values)에 각 값에 대응되는 인덱스를 부여할 수 있는 구조를 가지고 있다.

 

sr = pd.Series([17000, 18000, 1000, 5000],
               index=["피자", "치킨", "콜라", "맥주"])
print('시리즈 출력 :')
print('-'*15)
print(sr)

 

시리즈 출력 :
---------------
피자 17000
치킨 18000
콜라 1000
맥주 5000
dtype: int64

 

값(values)과 인덱스(index)를 출력한다.

 

print('시리즈의 값 : {}'.format(sr.values))
print('시리즈의 인덱스 : {}'.format(sr.index))

 

시리즈의 값 : [17000 18000 1000 5000]
시리즈의 인덱스 : Index(['피자', '치킨', '콜라', '맥주'], dtype='object')

 

 

데이터프레임(DataFrame)

데이터 프레임은 2차원 리스트를 매개변수로 전달한다. 2차원이므로 행방향 인덱스와 열방향 인덱스가 존재한다.

 

행과 열을 가지는 자료구조

 

시리즈가 인덱스와 값으로 구성된다면, 데이터프레임은 열까지 추가되어 열(columns), 인덱스, 값으로 구성된다. 

 

Serise의 컬렉션으로 구성된 다차원 테이블

 

values = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
index = ['one', 'two', 'three']
columns = ['A', 'B', 'C']

df = pd.DataFrame(values, index=index, columns=columns)

print('데이터프레임 출력 :')
print('-'*18)
print(df)

 

 

데이터프레임 출력 :
------------------
       A  B  C
one    1  2  3
two    4  5  6
three  7  8  9

 

 

시리즈와 시리즈가 합쳐져서 데이터프레임이 된다.

 

 

  • 특징
    • 열은 다양한 유형이 올 수 있다.
    • 크기변경이 가능하다.
    • 행 및 열에 레이블이 지정되어 있다.
    • 행 및 열에 대해 산술연산 수행이 가능하다.

 

시리즈와 데이터프레임 외에도 3차원 자료구조를 표현할 수 있는 Panel 이 있다.

 

그래픽으로 표현하기 어렵다.

 

 

 

 

 

 

 

 

 

 

 

https://challenge.tistory.com/32

 

Numpy 와 Pandas는 다르다.

Numpy와 Pandas의 API가 서로 상호작용이 가능하고, 대부분 우리가 Numpy를 다룰 때 1차원이나 2차원의 데이터를 보며 주로 handling 하기 때문에 종종 Pandas와 차이를 느끼지 못할 때가 많다. 물론 이는

challenge.tistory.com

https://wikidocs.net/32829

 

01-04 판다스(Pandas) and 넘파이(Numpy) and 맷플롭립(Matplotlib)

데이터 분석을 위한 필수 패키지 삼대장이 있습니다. 바로 Pandas와 Numpy 그리고 Matplotlib입니다. 세 개의 패키지 모두 아나콘다를 설치했다면 추가 설치 없이 사…

wikidocs.net

https://sdc-james.gitbook.io/onebook/4.-numpy-and-scipy/4.4-pandas/4.4.1-pandas

 

4.4.1 Pandas 자료구조 | OneBook(Python & Deep Learning)

4.4.1 Pandas 자료구조 pandas는 크게 세가지의 자료구조를 지원하고 있는데, 1차원 자료구조인 Series, 2차원 자료구조인 DataFrame, 그리고 3차원 자료구조인 Panel을 지원합니다. pandas 에는 효과적인 데이

sdc-james.gitbook.io