본문 바로가기
Deep Learning/밑바닥부터 시작하는 데이터 과학

[Pandas튜토리얼]Pandas Data analysis

by Steve-Lee 2018. 12. 3.

Pandas Lib

Python Data analysis Lib (from.pandas.org)

pandas is an open source, BSD-licensed library providing high-performance, easy-to-use data structures and data analysis tools for the Python programming language.    - from.pandas.org-


판다스(Pandas)는 오픈소스, BSD-라이센스 파이썬 라이브러리이다. 데이터 구조와 데이터 분석분야에서 쉽게 사용되며 높은 효율을 보여준다. 

ML을 배우기 앞서 기본적으로 알아두면 좋은 python library로 Pandas와 Numpy가 있습니다.
그래서 Hessey는 기본을 충실히 다지자는 이유로 Codecademy를 통해 Pandas Tutorial을 시작했습다. 
코딩을 단순히 한 번 하고 그치지 않고 계속해서 발전시키기 위해 기록으로 남기려고 합니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# 1일 1 Py
import pandas as pd # pandas lib import
 
# lambda 함수 응용1
df['Price with Tax'= df.apply(lambda row: row['Price']*1.075
                    if row['Is Texed?'== 'Yes'
                    else row['Price'],
                    axis=1)
 
# 기존의 조건문 - python
def total_earned(row):
    if row['hours_worked'<= 40:
    return row['hours_worked']*row['hourly_wage']
    else (40 * row['hours_wage']\
        +(row['hours_worked']-40* row['hourly_wage'* 1.50))
 
# lambda 조건문 - python
total_earned = lambda row:row['hours_worked']*\
                row['hourly_wage']\
                if row['hours_worked'<= 40
                else (row['hourly_wage']*40 + \
                (row['hours_woked']-40* (row['hourly_wage'* 1.50)
 
# Column name 변경하기
# DataFrame 만들기
df = pd.DataFrame({
    'name': ['John''Jane''Sue''Fred')
    'age' : [23292118]
})
 
# Column name 변경하기1
df.columns = ['First Name''Age']
 
# Column name 변경하기2 - rename함수 사용하기
df.rename(columns = {
    'name''First Name'},
    inplace = True)
 
# lambda apply
# orders Table에서 shoe_material이 leather면 shoe_source는 animal이다 
df['shoe_source'= lambda row: row.apply.shoe_source['animal']\
                    if row.shoe_material == 'leather'
                    else row.shoe.apply.shoe_source['vegan']
 
# .apply method? function?
# .apply function에 대한 공부가 필요하다
# 커스텀 함수를 사용하기 위해 복수개의 Column이 필요하다면 .apply함수가 필요하다고 한다
 
# Summary & Review
df['shoe_source'= orders.shoe_material.apply(lambda x:\
                    'animal' if x == 'leather'else 'vegan')    # 훨씬 직관적인가?
# lambda apply2
orders['salutation'= orders.apply(lambda row: \
                        'Dear Mr.' + row['last_name']
                         if orders.gender == 'male'
                         else 'Dear Ms. ' + row['last_name']
                         axis=1)
# lambda apply3
customer['area_code'= customer.phone_number.apply(lambda x: x.split('-')[0]
#Quize
attandance['call_parents'= attandance.apply(lambda row: 'Yes'
            if row['days_absent'> 10
            else 'No',
            axis = 1)
 
 # Adding columns to a DataFrame
# Using lambda functions to calculate complex quantities
# Renaming columns
 
cs
소스코드는 Color Script를 사용했습니다:: colored by Color Scripter


P.S - 구글링을 해보니
웹 문서로 작성되었고 무료로 작성되었기에 한 번 따라해보면서 배우면 좋을 것 같습니다. 단 처음 배우시는 분이10분만에 다 따라하기에는 양이 다소 많아보이네요...

이상 Hessey였습니다!







댓글