데이터 필터링

금융을 위한 중급 Python

Kennedy Behrman

Data Engineer, Author, Founder

데이터 소개

prices.head()
금융을 위한 중급 Python

데이터 소개

prices.head()
Date Symbol High
0 2020-04-03 AAPL 245.70
1 2020-04-02 AAPL 245.15
2 2020-04-01 AAPL 248.72
3 2020-03-31 AAPL 262.49
4 2020-03-30 AAPL 255.52
금융을 위한 중급 Python

데이터 소개

prices.describe()
금융을 위한 중급 Python

데이터 소개

prices.describe()
High
count 378.000000
mean 881.593138
std 720.771922
min 227.490000
max 2185.950000
금융을 위한 중급 Python

데이터 소개

prices.describe(include='object')
Symbol
count 378
unique 3
top AMZN
freq 126
금융을 위한 중급 Python

비교 연산자

< <= > >= == !=

금융을 위한 중급 Python

열 비교

prices.High > 2160
금융을 위한 중급 Python

열 비교

prices.High > 2160
0      False
1      False
2      False
3      False
4      False
       ...  
374    False
375    False
376    False
377    False
금융을 위한 중급 Python

열 비교

prices.Symbol == 'AAPL'
금융을 위한 중급 Python

열 비교

prices.Symbol == 'AAPL'
0       True
1       True
2       True
3       True
4       True
       ...  
374    False
375    False
376    False
377    False
금융을 위한 중급 Python

심벌로 마스킹

mask_symbol = prices.Symbol == 'AAPL'
aapl = prices.loc[mask_symbol]
금융을 위한 중급 Python

심벌로 마스킹

mask_symbol = prices.Symbol == 'AAPL'
aapl = prices.loc[mask_symbol]
aapl.describe(include='object')
Symbol
count 126
unique 1
top AAPL
freq 126
금융을 위한 중급 Python

가격으로 마스킹

mask_high = prices.High > 2160
big_price = prices.loc[mask_high]
금융을 위한 중급 Python

가격으로 마스킹

big_price.describe()
High
count 6.000000
mean 2177.406567
std 7.999334
min 2166.070000
max 2185.95000
금융을 위한 중급 Python

Pandas 불리언 연산자

  • And &
  • Or|
  • Not ~
금융을 위한 중급 Python

조건 결합

mask_prices = prices['Symbol'] != 'AMZN'
mask_date = historical_highs['Date'] > datetime(2020, 4, 1)
mask_amzn = mask_prices & mask_date
prices.loc[mask_amzn]
금융을 위한 중급 Python

조건 결합

Date Symbol High
0 2020-04-03 AAPL 245.7000
1 2020-04-02 AAPL 245.1500
252 2020-04-03 TSLA 515.4900
253 2020-04-02 TSLA 494.2599
금융을 위한 중급 Python

연습해 봅시다!

금융을 위한 중급 Python

Preparing Video For Download...