-
[멋쟁이사자처럼 부트캠프 그로스 마케팅] 데이터 분석 개론 : Pandas (2)TIL 2025. 2. 11. 23:35
학습목표
- Pandas 데이터 정렬 및 필터링 실습
- Pandas 데이터 그룹화 및 집계 실습
1. Sorting
- sort_value( )
df = pd.DataFrame(data) # 매출액 기준 오름차순 정렬 df_sorted_asc = df.sort_values(by="매출액", ascending=True) # 매출액 기준 내림차순 정렬 df_sorted_desc = df.sort_values(by="매출액", ascending=False) # 매출액 내림차순 정렬 후, 동일한 매출액 내에서 클릭수 오름차순 정렬 df_sorted_multi = df.sort_values(by=["매출액", "클릭수"], ascending=[False, True])
2. Filtering
- boolean indexing
# 클릭수가 800 이상인 캠페인만 선택 high_clicks = df[df["클릭수"] >= 800] filtered_df = df[(df["클릭수"] >= 800) & (df["전환율"] >= 0.05)] # AND filtered_df = df[(df["클릭수"] >= 800) | (df["전환율"] >= 0.05)] # OR
- query( )
# 매출액이 400만 원 이상인 캠페인 선택 filtered_df = df.query("매출액 >= 4000000") filtered_df = df.query("매출액 >= 4000000 and 전환율 >= 0.05") filtered_df = df.query("매출액 >= 4000000 or 전환율 >= 0.05")
- isin( )
: 특정 값을 포함하는 데이터 선택
# "봄맞이 할인", "겨울 세일" 두 개의 캠페인만 포함하는 데이터 선택 selected_campaigns = df[df["캠페인"].isin(["봄맞이 할인", "겨울 세일"])]
- str.contains( )
: 특정 문자열을 포함하는 데이터 선택
# "할인"이 포함된 캠페인만 선택 discount_campaigns = df[df["캠페인"].str.contains("할인")]
- between( )
: 특정 범위에 있는 데이터 선택
# 매출액이 300만 원 이상, 450만 원 이하인 캠페인 선택 filtered_df = df[df["매출액"].between(3000000, 4500000)]
3. groupby
# 캠페인별 매출 합산 (하나의 열) df_grouped = df.groupby("캠페인")["매출액"].sum() # 캠페인과 지역별 매출 합산 (여러 개의 열) df_grouped = df.groupby(["캠페인", "지역"])["매출액"].sum() # agg(regation) -- 여러 개의 집계 함수 적용 df_grouped = df.groupby("캠페인").agg({"매출액": ["sum", "mean"], "클릭수": ["sum", "mean"]}) # 그릅화된 데이터 필터링 df_filtered = df.groupby("캠페인")["매출액"].sum() df_filtered = df_filtered[df_filtered >= 7000000] # 그룹화 후 필터링하면 됨
사실 마케팅 예제 이놈이 진짜인데..
내일부터는 SQL 복습이 시급해서 주말에 할게요..
아무도뭐라고안함'TIL' 카테고리의 다른 글
[멋쟁이사자처럼 부트캠프 그로스 마케팅] 데이터 분석 개론 : Pandas - SQL 연동 (2) (1) 2025.02.14 [멋쟁이사자처럼 부트캠프 그로스 마케팅] 데이터 분석 개론 : Pandas - SQL 연동 (2) 2025.02.13 [멋쟁이사자처럼 부트캠프 그로스 마케팅] 데이터 분석 개론 : SQL (2) (5) 2025.02.12 [멋쟁이사자처럼 부트캠프 그로스 마케팅] 데이터 분석 개론 : Pandas (1) (2) 2025.02.10 [멋쟁이사자처럼 부트캠프 그로스 마케팅] 데이터 분석 개론 : 파이썬 (0) 2025.02.09