동현 유
척척석사
동현 유
전체 방문자
오늘
어제
  • 분류 전체보기 (181)
    • BlockChain (48)
      • [paper] Consensus (13)
      • [paper] Execution (19)
      • [paper] Storage (5)
      • [paper] ZKP (1)
      • [paper] Oracle (1)
      • Blockchains (9)
    • Java (19)
      • Java의 정석 (13)
      • Java 파헤치기 (5)
    • Python (20)
      • Python 뜯어보기 (6)
      • 데이터 분석 기초 (5)
      • Python 기초 강의 (6)
      • Python 기초 강의 부록 (3)
    • Golang (0)
    • MySQL (3)
      • programmers (2)
      • 기본 문법 (0)
    • 웹 프로젝트 (IBAS) (36)
      • Django 레거시 (14)
      • SpringBoot api 개편 (14)
      • Infra (3)
      • 서버 장애 기록 (4)
      • 신입팀원 교육 자료 (1)
    • CS (30)
      • Operating System (22)
      • Computer Security (3)
      • Network (4)
      • DBMS (1)
    • 책 (10)
      • 도메인 주도 설계 철저 입문 (9)
      • Real MySQL 8.0 (1)
    • BOJ 문제 풀이 (3)
    • 이러쿵저러쿵 (10)
    • 회고 (1)

인기 글

최근 댓글

최근 글

hELLO · Designed By 정상우.
동현 유

척척석사

[머신러닝을 위한 파이썬] 3. pandas 활용 예제
Python/데이터 분석 기초

[머신러닝을 위한 파이썬] 3. pandas 활용 예제

2021. 3. 18. 20:29

 

>> 완벽하게 알아야 하는 자료구조

  • Series
  • DataFrame

>> 알아야하는 문법

  • 파일 읽어오기, 저장하기
  • Series 생성방법
  • DataFrame 생성방법
  • DataFrame Col : 추가, 삭제, 이름변경, 새로운 데이터 할당, 선택적 불러오기
  • loc / iloc
  • Index 변경 (KEY 값 변경)
  • Data drop
  • Operation, BroadCasting
  • inplace, map, apply
  • decribe, unique
  • Groupby & CrossTab & Pivat Table
  • Gierarchical Index
  • Aggregation
  • Transformation
  • Merge & Concat
  • Join

 

1번과 2번 예제 설명은 여기를 참고

총 3개의 예제가 있다!

 

1,2번 문제.zip
0.41MB
3번.zip
0.38MB

 

 

#1. 답안코드

# 첫번째 방법 : groupby
def get_rating_matrix(filename):

    # 윈도우 \, 그 외 os에서는 /
    df = pd.read_csv('.\\'+filename)
    
    return df.groupby(['target','source'])['rating'].first().unstack(fill_value = 0)
    
# 두번째 방법 : crosstab    
def get_rating_matrix(filename):

    # 윈도우 \, 그 외 os에서는 /
    df = pd.read_csv('.\\'+filename)
    
    return pd.crosstab(index=df.target,columns=df.source,values=df.rating,aggfunc='sum').fillna(0)    

코드 실행 결과, 동일한 결과를 얻는다.

 

 

#2. 답안코드

def get_frequent_matrix(filename):

    # 윈도우 \, 그 외 os에서는 /
    df = pd.read_csv('.\\'+filename)
    df['rating'] = 1 
    
    # groupby도 가능하다!
    return pd.crosstab(index = df.source,columns=df.target,values=df.rating,aggfunc='sum')

코드 실행 결과

 

#3. 답안코드

import numpy as np
import pandas as pd

# 1번
def createarr(row,col,mean,std):
   return  np.random.normal(mean,std,row*col).reshape(row,col)

# 2번
df = pd.read_csv("./01-23-2020.csv")

# 3번
def confirmed():
    return df.groupby('Country/Region')['Confirmed'].sum()
    
# 4번    
def confirmed():
    result = pd.DataFrame()
    result['01-23-2020'] = df.groupby('Country/Region')['Confirmed'].sum().sort_values(ascending = False)
    
    
    return result
    
# 5번   
def get_wuhan_confirmed(time):
    df = pd.read_csv('.\\' + time + '.csv')
    result = pd.DataFrame()
    result[time] = df.groupby('Country/Region')['Confirmed'].sum().sort_values(ascending = False)
    return result

# 6번
def merge(x,y):
    data1 = get_wuhan_confirmed(x)
    data2 = get_wuhan_confirmed(y)
    result = pd.merge(data1,data2,on ='Country/Region',how='outer').fillna(0) 
    result['확진자 증가 수'] = result[y] - result[x]
    return result

 

 

'Python > 데이터 분석 기초' 카테고리의 다른 글

Kaggle - [House Prices] 집값 예측 모델링 후기  (0) 2021.06.06
Multiple Linear Regression 정리 + 느낌  (0) 2021.03.29
[머신러닝을 위한 파이썬] 2. numpy 활용 예제  (0) 2021.03.18
[머신러닝을 위한 파이썬] 1.행렬 연산 구현해보기  (0) 2021.03.18
    동현 유
    동현 유
    Fault Tolerant System Researcher for more Trustful World and Better Lives. (LinkedIn: https://www.linkedin.com/in/donghyeon-ryu-526b8a276/)

    티스토리툴바