λͺ©ν
- μ§λνμ΅ λͺ¨λΈμ μν νλ ¨ λ°μ΄ν°λ₯Ό μμ±
- μ§λνμ΅μ μν λ°μ΄ν° μμ§λμ΄λ§ μ΄ν΄ λ° μ μ ν νΉμ± μμ±
λ°μ΄ν° νμΈ
- EDAλ₯Ό ν΅ν΄ κ° νμΌλ€ λ° νΉμ±λ€μ μ‘°μ¬νκ³ λ°μ΄ν°μ λν΄ νμ ν©λλ€.
- λ°μ΄ν°νλ μ κ°μ κ΄κ³λ₯Ό μ΄ν΄λ΄
λλ€.
- λ³΄ν΅ λ°μ΄ν°νμΌμ μ¬λ¬ 컬λΌλ€μ μ‘°ν©μΌλ‘ λ€μνκ² λ°μ΄ν° λ² μ΄μ€μ μ μ₯λ©λλ€.
- λ€μν νμΌμ λΆλ¬μ μλ‘μ μ°κ²°λλ 컬λΌμ΄ μμΌλ©΄ mergeλ₯Ό μ΄μ©ν΄ λͺ©μ μ λ§κ² μλ‘μ΄ λ°μ΄ν°νλ μμ λ§λλλ€.
- train λ° test(νΉμ val) setμ΄ μμ ν λΆλ¦¬λμ΄μλμ§ νμΈν©λλ€.
- μμ
set(orders[orders['eval_set']=='test']['user_id'])\
.isdisjoint(set(orders[orders['eval_set']=='train']['user_id']))
# testμ ν΄λΉνλ user_id κ°λ€κ³Ό trainμ ν΄λΉνλ user_idμ κ΅μ§ν©μ΄ μλμ§ νμΈ
Trueκ° λμ€λ©΄, κ΅μ§ν©μ΄ μλ κ² μ¦ κ²ΉμΉλ λΆλΆμ΄ μλ€.
- κ°κ°μ data setμ μ€λ³΅ μ¬λΆλ νμΈν΄μΌν©λλ€.
λ°μ΄ν° κ²°ν©
merge
ν¨μλ₯Ό ν΅ν λ°μ΄ν°νλ μ κ° κ²°ν©- κ° λ°μ΄ν°νλ μμ΄ κ°λ 곡ν΅λ μΉΌλΌμ ν΅ν΄ λ°μ΄ν°λ₯Ό κ²°ν©ν©λλ€.(λ¨, μνλ 쑰건μ λ§κ²)
df_A.merge(df_B, on='column_c') # Aμ Bλ₯Ό column_c νΉμ±μ κΈ°μ€μΌλ‘ κ²°ν©
# hows= μ μΆκ°ν΄μ merge μ κΈ°μ€μ΄λλ dataframe μ ν μ μμ΅λλ€.
# left_on = , right_on = μ μ¬μ©ν λλ, κΈ°μ€μ΄ λλ νΉμ±μ΄ κ°μ μ±μ§μΈλ° dfλ§λ€ ννλ μ΄λ¦μ΄ λ€λ₯Ό λ μ¬μ©ν©λλ€.
groupby
ν¨μλ₯Ό ν΅ν λ°μ΄ν°νλ μ λ΄μμ λ°μ΄ν° κ²°ν© λ° μ‘°μ
df_A.groupby('column_c') # .count(), .mean(), .apply(list) λ± μ»¬λΌμ λ¬Άμ λ€ λ€μν ν¨μλ₯Ό μ μ©ν΄μ dfμ λΌ μ μμ΅λλ€.
# μ΄ λ, groupbyλ₯Ό νκ² λμ΄ μΈλ±μ€κ° λ°λ κ²½μ° `reset_index()`μ ν μμ΄λΌλ μ μ κΈ°μ΅νλ©΄ νΈλ¦¬ν©λλ€.
# μ¦, groupbyλ‘ νλ² λ¬Άκ³ μ΄λ°μ λ° ν¨μμμ
μ ν΄μ€ λ€, reset_index()λ‘ νλ² νκ³ νλ λλμ
λλ€.
μμ μμ
products_per_order = (prior
.groupby(['user_id','order_id']) # 첫λ²μ§Έ groupby
.count()
.reset_index() # μμμ groupby νλ©΄ μΈλ±μ€κ° 2κ°μ 컬λΌμ λν΄ λ¬Άμ΄κΈ° λλ¬Έμ μ΄νμ νμ΄μ£ΌκΈ°
.groupby('user_id')['product_id'] # λλ²μ§Έ groupby
.mean()
.reset_index() # λλ²μ§Έ groupbyμ λν΄μ νμ΄μ£ΌκΈ°
.rename(columns={'product_id':'products_per_order'}))
products_per_order
μλμ κ°μ κΉλν κ²°κ³Όλ₯Ό λΌ μ μμ΅λλ€.
(groupbyμ λν΄μ μΆμμ μΈ λλμ μ μκ°νλ κ² μ€μνλ― ν©λλ€. λ¬Άμ΄λλ λͺ¨μ΅μ λλ΅ μμνκ³ κ±°κΈ°μ λ€μν ν¨μλ₯Ό μ μ©νκ² λ€λ λλ!)
merge ν¨μμ groupby ν¨μμ λν μ°μ΅ κ³μ!!!
μλ³Έ λ°μ΄ν°λ‘λΆν° λ μ’μ νΉμ±μ κ°μ§ νμ΅λ°μ΄ν°λ₯Ό λ§λ€μ΄λ΄λ λ°©λ²μ 무μν λ§μ΅λλ€.
μ΄ λ°μ΄ν°λ‘ νμ΅μ΄ μ λλ€λ©΄ νμ΄μ΄κ² μ§λ§, κ·Έλ μ§ μμ κ²½μ° λ μ’μ νμ΅ λ°μ΄ν°λ₯Ό λ§λ€κΈ° μν΄ λ°μ΄ν° νλ‘μΈμ€μμ κ°μ₯ λ§μ μκ°μ κ³ κ΅°λΆν¬ν΄μΌ ν μ μμ΅λλ€.
'πΏ Data > λΆνΈμΊ ν' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[TIL]36_Interpreting ML Model (0) | 2022.01.05 |
---|---|
[TIL]35.Feature Importance (0) | 2022.01.04 |
[TIL]33.Choose your ML problems (0) | 2022.01.01 |
[TIL]32.Section2 Sprint2 Chall(Sprint2 ν€μλ μ€μ¬ μ 리) (0) | 2021.12.31 |
[TIL]31.Model Selection(λͺ¨λΈ μ ν) (0) | 2021.12.30 |