320x100
## Creating Pandas Series (Part 1)
import pandas as pd
### from DataFrame
pd.read_csv('summer.csv', usecols = ['Athlete'], squeeze = True).head()
# 설명은 shift + tab, tab으로 확인해보고
# squeeze 는 "하나의 열만 입력되었을 때, 시리즈를 반환한다."라는 의미다
# 하지만 이게 크게 의미가 없다고 생각하는게, 여태까지 보면 단일 컬럼은 언제나 Series였고, 다중 컬럼은 언제나 dataframe이였다.
# Series 만들기인데,
# 왜 만들어야하는걸까?
# 보니깐 Series는 1차원적
# DataFrame은 2차원적 이라고 한다.
pd.Series([10,25,6,36,2])
# 자동으로 인덱스 값이 0부터 시작되서 기입된다.
pd.Series([10,25,6,36,2], index = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'])
# 각각의 인덱스에 이름을 붙여주는 것이다.
#### Creating Pandas Series (Part 2)
import pandas as pd
import numpy as np
sales = np.array([10,25,6,36,2])
sales
# array([10, 25, 6, 36, 2])
# pandas의 Series로 전환해주는 것은 튜플이든 리스트든 다 상관없다.
sales = [10,25,3,63,2]
pd.Series(sales)
'''
0 10
1 25
2 3
3 63
4 2
dtype: int64
'''
dic = {'Mon':10, 'Tue':25, 'Wed':6, 'Thu':36, 'Fri':2}
dic
# {'Mon': 10, 'Tue': 25, 'Wed': 6, 'Thu': 36, 'Fri': 2}
sales = pd.Series(dic)
sales
'''
Mon 10
Tue 25
Wed 6
Thu 36
Fri 2
dtype: int64
'''
pd.Series(dic, index= ['Fri', 'Sat', 'Sun', 'Mon', 'Tue', 'Wed'])
'''
Fri 2.0
Sat NaN
Sun NaN
Mon 10.0
Tue 25.0
Wed 6.0
dtype: float64
'''
# 흥미롭다. 재설정 되는 개념이 아니라, 이미 설정된 값에서 없는것은 결측치 (Nan)값으로 대체되는것이.
pd.Series(dic, index=[1,2,3,4,5])
# 전체적으로 생각을 해보니깐 dic이라는 변수에 인덱스값, 필드값을 모두 담아놓으면
# 추가로 Series 선언같은걸 해줄때 설정 초기화가 되는게 아니라, 기본적으로 dic이 가지고 있는 값 그대로를 가지고 간다는 점이 다른것같다.
## Indexing and Slicing
titanic = pd.read_csv('titanic.csv')
age = titanic.age
age
'''
0 22.0
1 38.0
2 26.0
3 35.0
4 35.0
...
886 27.0
887 19.0
888 NaN
889 26.0
890 32.0
Name: age, Length: 891, dtype: float64
'''
age[-1]
# 이것에 대하여는 ValueError로써 작동이 안된다.
# 인덱싱이 "순서에 기반한"인덱싱이 아니라, "인덱스 라벨에 기반한"인덱스일 경우는 이렇다고 한다.
# 위의 DataFrame이 인덱싱이 안될때의 방법이 있다.
# 우선 마지막의 숫자를 체크
age.tail(2)
'''
889 26.0
890 32.0
Name: age, dtype: float64
'''
# 즉, 마지막의 숫자는 32.0이 나와야 정상이다.
age.iloc[-1]
# 32.0
300x250
'개발일지 > 임시카테고리' 카테고리의 다른 글
pandas 판다스 기초 6 (0) | 2022.07.16 |
---|---|
pandas 판다스 기초 5 (0) | 2022.07.15 |
pandas (판다스) 기초3 (0) | 2022.07.15 |
Tableau 태블루 과제 첫번째 및 후기 (0) | 2022.07.15 |
pandas(판다스) 기초 2 (0) | 2022.07.14 |