판다스(Pandas) Series의 데이터 생성 및 억세스 방법
1. 판다스의 장점
판다스(pandas)는 Numpy를
보완해서 만들어진 문법인데요.
이름을 입력할수 있도록 만들어졌습니다.
a. 기본적인 통계데이터를 제공하고,
b. NaN values 를 알아서 처리합니다.
c. 숫자 문자열을 알아서 로드합니다.
import pandas as pd
판다스를 사용하려면
먼저 호출을 해야 합니다.
판다스를 다룰때는 인덱스라는 용어는
왼쪽에 붙어있는 것을 가르킵니다.
(쉽게 사람용 인덱스라고 할께요 !!)
2. Series(시리즈) 기본 구조
Series(시리즈)는 1차원 배열과 같은
자료구조를 가지고 있습니다.
시리즈는 1차원 배열과는 다르게
데이터와 관련된 인덱스의 값도
함께 저장이 됩니다.
기본 형식
class pandas.Series(data=None, index=None, dtype=None, name=None, copy=False, fastpath=False) |
출처 : https://pandas.pydata.org/docs/reference/api/pandas.Series.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
# ------------------------------------------------------------------------------ #
import pandas as pd
food = pd.Series([30, 6, 'Yes', 'No'])
print(food)
>> [결과]
0 30
1 6
2 Yes
3 No
dtype: object
# ------------------------------------------------------------------------------ #
|
cs |
Series(시리즈) 객체를 생성할때
인덱스를 따로 지정하지 않으면
기본적으로 0부터 시작하는 정수로
인덱스값이 주어집니다.
3. Series(시리즈) 데이터 생성
시리즈는 데이터를 생성할때
리스트, 딕셔너리, 튜플로
만들수가 있습니다.
(1) 리스트(List)로 생성
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
# ------------------------------------------------------------------------------ #
import pandas as pd
gym = pd.Series(['태권도','합기도','주짓수','유도'])
print(gym)
>> [결과]
0 태권도
1 합기도
2 주짓수
3 유도
dtype: object
# ------------------------------------------------------------------------------ #
|
cs |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
# ------------------------------------------------------------------------------ #
import pandas as pd
index = ['eggs', 'apples', 'milk', 'bread']
data = [30, 6, 'Yes', 'No']
pd.Series(data= data, index= index)
>> [결과]
eggs 30
apples 6
milk Yes
bread No
dtype: object
# ------------------------------------------------------------------------------ #
|
cs |
(2) 딕셔너리(Dictionary)로 생성
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
# ------------------------------------------------------------------------------ #
# 판다스 호출
import pandas as pd
gym_data = {'a' : '태권도', 'b' : '합기도', 'c' : '주짓수', 'd' : '유도'}
gym_list = pd.Series(gym_data)
gym_list
>> [결과]
0 태권도
1 합기도
2 주짓수
3 유도
dtype: object
# ------------------------------------------------------------------------------ #
|
cs |
파이썬(Python)의 딕셔너리에서는
key(키) : value(밸류)가 존재합니다.
시리즈(Series)도 딕셔너리로
데이터를 생성하면 이와 유사합니다.
kye(키) 값은 인덱스값으로 들어갑니다.
(3) 튜플(Tuple)로 생성
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
# ------------------------------------------------------------------------------ #
# 판다스 호출
import pandas as pd
gym_data = ('태권도','합기도','주짓수','유도')
pd.Series(data= gym_data, index= ['a', 'b' , 'c', 'd'] )
>> [결과]
a 태권도
b 합기도
c 주짓수
d 유도
dtype: object
# ------------------------------------------------------------------------------ #
|
cs |
튜플도 리스트와는 차이가 별로 없습니다.
3. Series(시리즈) 데이터 억세스
a.
인덱스만 보여주기
fruit.index 결과 >> Index(['apples','oranges','bananas'], dtype='object') |
b.
데이터만 확인
fruit.values 결과 >> array([10, 6, 3], dtype=int64) |
c.
데이터 접근 하기
fruit['apples'] 결과 >> 10 |
변수 대괄호( [ ] ) 안에 억세스할
데이터의 인덱스명을 적어줍니다.
fruit[['apples', 'oranges', 'bananas']] 결과 >> apples 10 oranges 6 bananas 3 dtype: int64 |
선택해야 할 인덱스명이 여러개인 경우
변수 대괄호( [ ] ) 안에 리스트로
묶어서 적어줍니다.
fruit[ : 'oranges'] 결과 >> apples 10 oranges 6 dtype: int64 |
불러오는 데이터의 인덱스에
~ 에서 ~ 까지 순서가 있다면
슬라이싱으로 불러옵니다.
fruit[0] 결과 >> 10 |
컴퓨터가 매기는 순위로
데이터 값을 불러올수 있습니다.
fruit[ 1 : ] 결과 >> oranges 6 bananas 3 dtype: int64 |
컴퓨터가 매기는 순위로
슬라이싱을 할수 있습니다.
d. 찾는 인덱스 ~가 있니?
'apples' in fruit >> True |
in 을 사용하면 참과 거짓
True와 False를 알수 있습니다.
e. 찾는 데이터 ~ 가 있니?
10 in fruit.values >> True |
데이터값을 in으로 찾을때는
.values도 함께 써줘야 합니다.
3. 그 밖에 함수들!!
a. 데이터의 모양
groceries.shape 결과 >> (4, ) |
b. 데이터의 개수
groceries.size 결과 >> 4 |
c. 데이터의 차원 확인
groceries.ndim 결과 >> 1 |
f. 데이터 타입
groceries.dtype 결과 >> dtype('O') (Object 의 O) |
'Python > Pandas' 카테고리의 다른 글
구글 맵 API - Geocoding API 설정하는 방법 (0) | 2022.05.04 |
---|---|
판다스(pandas) Series(시리즈) 연산 (0) | 2022.05.02 |
차트 그리기할때 한글 안깨지게 하는법 (0) | 2022.05.02 |
판다스(pandas) csv 파일 저장하고 불러오기 to_csv(), read_csv() 함수 (0) | 2022.04.28 |
판다스(pandas) Series(시리즈) 액세스 (2) | 2022.04.28 |
댓글