Pandas를 대충 살펴보자

I'm Cape·2023년 5월 17일
0

제로베이스 데이터 취업 스쿨 3주차 스터디노트 2호

주저리

강의에서 스테로이드 맞은 엑셀이라고 해서 엄청 웃었다.
근데 뭔가 스팀팩이라고 말하면 더 느낌이 오는 것 같아서
맘대로 스팀팩으로 바꿔봤다ㅋㅋ

Pandas 덕에 Python은 데이터 핸들링을 R 급으로 할 수 있다.

기초를 본다면 Series, Dataframe을 보면 된다.
두가지 다 python class이고, 이 두 class를 기반으로 운영된다.

Series 설명

일단 납득 안되는 부분... 1차원의 다차원 array(One-dimensonal ndarray)가 대체 말인지 방구인지?

일종의 array인데 label이 달려있는 형태로 보인다.
그런데 label이 hashable인데 not unique하다고...? (동공지진)

test = pd.Series([1, 2, 3, 4, 5], index=["x", "x", "x", "y", "y"])
test["x"]
x    1
x    2
x    3
dtype: int64

인덱스가 중복이 된다...!
hashable하다는걸 잘 모르겠다.
test["x"]를 했을 때,
O(1)의 시간복잡도 내에서 데이터를 획득하는게 가능하다는건가?
내가 아는 Hash는 이건데...

또한, 두 Series 사이에 연산이 되는데,
두 Series의 길이가 달라도 괜찮고,
결과는 두 Series label을 합친 것이 정렬된 형태라고 한다.

문서가 굉장히 잘 쓰여져 있는데?

링크
One-dimensional ndarray with axis labels (including time series).

Labels need not be unique but must be a hashable type. The object supports both integer- and label-based indexing and provides a host of methods for performing operations involving the index. Statistical methods from ndarray have been overridden to automatically exclude missing data (currently represented as NaN).

Operations between Series (+, -, /, *, **) align values based on their associated index values– they need not be the same length. The result index will be the sorted union of the two indexes.

DataFrame 설명

list를 담고 있는 dictionary의 형태이다.

# 요런 느낌
dataframe_look = {
	"col1": [1, 2, 3, 4, 5],
    "col2": ["a", "b", "c", "d", "e"]
}

list 대신 pandas Series instance를 담고 있을테고,
dictionary가 아닌 DataFrame class 기반 instance인 것

링크
Two-dimensional, size-mutable, potentially heterogeneous tabular data.

Data structure also contains labeled axes (rows and columns). Arithmetic operations align on both row and column labels. Can be thought of as a dict-like container for Series objects. The primary pandas data structure.

profile
Impact

0개의 댓글