본문 바로가기

카테고리 없음

[패스트캠퍼스 수강 후기] 데이터분석 인강 100% 환급 챌린지 8회차 미션

안녕하세요. 오늘 무심코 강의 분량을 보는데... 참 많이 남았네요. 50일 과정인데 이러다가는 완주를 못할것같아 더 많이씩 들어야겠다는 생각을 했습니다. 드디어 시작한 판다스 예에. 얼렁 다 배워서 익숙해지고 싶어요. 어떻게 잘 써먹을수 있을지 기대되네요. 

 

39. ch06_09-43. ch06_13
02.part1. [파이썬 필수 스킬] 데이터분석을 위한 시작, 전처리 라이브러리
ch 01_01- ch 01_04


39. ch06_09
3. index를 반환하는 argsort

정렬된 값이 아닌 index를 반환

3-1. 열 정렬(왼쪽에서 오른쪽)

np.argsort(arr2d, axis=1)
>array([[0, 1, 2, 3],
[3, 2, 1, 0],
[1, 0, 3, 2]])

np.sort(arr2d, axis=0)
>array([[ 4, 3, 2, 1],
[ 5, 6, 7, 8],
[10, 9, 12, 11]])

np.argsort(arr2d, axis=0)
>array([[1, 1, 1, 1],
[0, 0, 0, 0],
[2, 2, 2, 2]])

인덱스가 필요할 때 활용

40. ch06. numpy - 10. matrix(행렬) 개요

matirx : 행렬
행(row) + 열(column)

shape가 같아야 함.
같은 position끼리 연산

2X3 + 2X3 = 2X3

곱셈
맞닿는 shape이 같아야 함

(2X3) X (2X3) 불가
(2X3) X (3X2) = 2X2 가능

안쪽의 3의 shape가 같아야 계산 가능.
결과값은 바깥쪽의 형태로 나옴

41. ch06. numpy - 11. matrix(행렬)의 연산 - 덧셈, 뺼셈

1. 행렬 - 덧셈

1-1. 덧셈

a = np.array([[1, 2, 3],
[2, 3, 4]])

b = np.array([[3, 4, 5],
[1, 2, 3]])

a + b
>array([[4, 6, 8],
[3, 5, 7]])

1-2. sum

a = np.array([[1, 2, 3],
[2, 3, 4]])

np.sum(a, axis=0) 첫번째 인자에는 a, 두번째 인자에는 축(기준 알려주기)
axis=0 -> row 기준. row는 아랫방향으로 감.

np.sum(a, axis=0)
>array([3, 5, 7]) 1+2, 2+3, 3+4

axis=1 -> column 기준. column는 좌우방향으로 감.

np.sum(a, axis=1)
>array([6, 9])

2. 행렬 - 뺼셈

덧셈과 동일
a - b


42. ch06. numpy - 12. matrix(행렬)의 연산 - 곱셈

일반 곱셈

a = np.array([[1, 2, 3],
[2, 3, 4]])

b = np.array([[3, 4, 5],
[1, 2, 3]])

a.shape, b.shape
>((2, 3), (2, 3))
(shape 확인 해보기)

a * b
>array([[ 3, 8, 15],
[ 2, 6, 12]])

dot product(단순 곱셈과 다름)

a = np.array([[1, 2, 3],
[2, 3, 4]])

b = np.array([[3, 4, 5],
[1, 2, 3]])

c = np.array([[1, 2],
[3, 4],
[5, 6]])

a * b
>array([[ 3, 8, 15],
[ 2, 6, 12]])

np.dot(a,c)
>array([[22, 28],
[31, 40]])

같은 포지션에 있는 것들 -> 단순곱셈

43. ch06. numpy - 13. broadcasting

전체 요소에 더하거나 빼거나 곱하거나 나누거나 가능

1-1. 숫자의 연산(단일)
a = np.array([[1, 2, 3],
[2, 3, 4]])

a + 3
>array([[4, 5, 6],
[5, 6, 7]])

a * 3
>array([[ 3, 6, 9],
[ 6, 9, 12]])

1-2. array(배열)의 브로드캐스팅

? 왜 이 부분은 강의 내용이 없는지.. 표시해두고 전화 문의 할 예정.


02.part1. [파이썬 필수 스킬] 데이터분석을 위한 시작, 전처리 라이브러리

ch 01. pandas - 01. pandas 소개

series : 1차원 데이터배열 세로로. (액셀의 column) a, b, c
DataFrame : 2차원 데이터배열

ch 01. pandas - 02. series와_dataframe

1. pandas 패키지 로드

import pandas

import pandas as pd
pd
><module 'pandas' from '/usr/local/lib/python3.6/dist-packages/pandas/__init__.py'>

2. Series와 DataFrame

2-1. Series
pd.Series([1, 2, 3, 4])
>0 1
1 2
2 3
3 4
dtype: int64

a = [1, 2, 3, 4]

pd.Series(a)
>0 1
1 2
2 3
3 4
dtype: int64

mylist = [1, 2, 3, 4]
pd.Series(mylist)
>0 1
1 2
2 3
3 4
dtype: int64

2-2. DataFrame

방법1. list로 만들기

company1 = [['삼성', 2000, '스마트폰'],
['현대', 1000, '자동차'],
['네이버', 500, '포털']]

pd.DataFrame(company1)
> 0 1 2
0 삼성 2000 스마트폰
1 현대 1000 자동차
2 네이버 500 포털

df1 = pd.DataFrame(company1)
> 0 1 2
0 삼성 2000 스마트폰
1 현대 1000 자동차
2 네이버 500 포털

제목컬럼 만들기

df1.columns = ['기업명', '매출액', '업종'] 개수 세개 똑같이 맞춰줘야함.
(개수 2개로 하면 에러)

방법 2. dict로 만들기

company2 = {'기업명':['삼성', '현대', '네이버'],
'매출액': [2000, 1000, 500],
'업종': ['스마트폰', '자동차', '포털']
}

df2 = pd.DataFrame(company2)
> 기업명 매출액 업종
0 삼성 2000 스마트폰
1 현대 1000 자동차
2 네이버 500 포털

index를 특정 column으로 지정하기
index 여기에서 0, 1, 2 을 이야기함


df1.index = df1['기업명']

df1
>
기업명 기업명 매출액 업종
삼성 삼성 2000 스마트폰
현대 현대 1000 자동차
네이버 네이버 500 포털

series=column
df1['매출액']
>기업명
삼성 2000
현대 1000
네이버 500
Name: 매출액, dtype: int64

type(df1['매출액'])
>pandas.core.series.Series


03. ch01. pandas - 03. csv 파일 읽어오기

1. csv 파일
쉼표로 구분된 파일
쉼표로 구분된 파일 훨씬 가벼움
공공데이터 포털 -> csv 포맷 파일 제공


1-2 방법2 구글 드라이브에 있는 샘플 파일 읽어오기

from google.colab import drive
drive.mount('/content/drive')

>Go to this URL in a browser: https://accounts.google.com/o/oauth2/auth?client_id=947318989803-6bn6qk8qdgf4n4g3pfee6491hc0brc4i.apps.googleusercontent.com&redirect_uri=urn%3aietf%3awg%3aoauth%3a2.0%3aoob&scope=email%20https%3a%2f%2fwww.googleapis.com%2fauth%2fdocs.test%20https%3a%2f%2fwww.googleapis.com%2fauth%2fdrive%20https%3a%2f%2fwww.googleapis.com%2fauth%2fdrive.photos.readonly%20https%3a%2f%2fwww.googleapis.com%2fauth%2fpeopleapi.readonly&response_type=code

Enter your authorization code:
빈칸

으로 뜨면 링크 클릭해서 빈칸에 코드 삽입

filename = '이곳에 파일 경로 붙여넣기'
pd.read_csv(filename)
>

경로복사가 안됨....ㅎ..

1-3. 파일 URL로 바로 읽어오기
pd.read_csv('http://bit.ly/ds-korean-idol-excel')


04. ch01. pandas - 04. excel 파일 읽어오기

csv 파일 방식과 동일

pd.read_excel('URL 입력')



 

패스트캠퍼스 데이터분석 강의 링크

bit.ly/3imy2uN