Hamutaro

부-하

 

오늘은 부트캠프 8일차입니다.

시간 참 빠른 것 같아용..

 

어제 좋은 소식이 있었다면 바로

저희 ABC 부트캠프 서포터즈가 됐다는 소식인데용..

 

제 현란한 키보드 스킬을 이용해서 열심히

작성해 보겠습니다.

기대해주세요 o_<찡긋

 

 

근데 진짜 거짓말 안치고 하나도 안보여요 ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ

이러고 화면 보고있습니다..

하지만 강사님이 미리 수업파일을 주셔서 그거보면서

따라가구 있다구욧, ><

 

 

 

잘보세용 a에다가 배열을 넣어주고용

 

슬라이싱 같은 경우에는 중간 값빼고 앞뒤를 빼올 수 없지만

이런식으로 True, False를 활용해 원하는 부분만 쏙 빼올 수 있습니다.

 

 

배열 크기를 변환시킬 수 있는 방법도 있습니다 6^^6

reshape를 사용하면 됩니다 ^^! 편-안

 

행이나 열이 정해지면 나머지 값은 -1을 입력해도 괜찮습니다

 

이게 뭘까,, 싶죠?

저도 막 이상한거 만들고싶은데

이제 배우고있는 라이브러리라

뭘만들까 고민되네용,,,, ㅜ

 

 

 

 

flatten()을 사용하게 되면 다차원을 1차원 배열로 바꿔줍니다!!!

 

이제부터 헷깔리는 개념들,, 마구마구 나와용,,

엥 이건 뭐지,, 왜 저렇게 나오지 생각할 수 있는데

원래 배열은 이렇게 생겼습니다..

 

이친구중 원하는 값만 출력할 껀데

왼쪽 []를 x, 오른쪽 []를 y로 생각하면 편합니다.

첫번째 값을 잘보면,, [1,0] = 4 맞죠?

계속 해보면

[5,3] = 23

[7,1] = 29

[2,2] = 10 

인 겁니다. 대박이죠 이해 완전 잘가죠,,,,

팬시인덱스 결과는 항상 1차원이라고 하고용

팬시인덱스는 슬라이싱과 달리 선택된 데이터를 새로운 배열로 복사한다고 합니다.

 

 

 

ㅎㅎ 아직 끝나지 않았다구요

 

이건 뭐야 살려줘 하실 수 있는데

다시 해볼게요 이번에는 배열로 출력할껀데

[]왼쪽이 그대로 x, []오른쪽은 y인데 대신 :전체라서

[1:0][1:3][1:1][1:2]인 겁니다!!!!

 

 

 

이친구들은 축 전환을 하는 함수입니당

근데 transpose는 다소 헷깔릴 수 있어용,,,

일단 축 번호를 받아서 치환한다는겁니다..

 

swapaxes는 축 번호로 배열을 뒤바꾸어줍니다 !.

 

변환하는 함수

T

transpose

swapaxes

잘 알아두시면 됩니다....

 

 

 

hstack 행의 수가 같은 두개이상의 배열을 옆으로 연결
vstack 열의 수가 같은 두개 이상의 배열을 위 아래로 연결
dstack 깊이방향으로 배열을 합침 
tile 동일한 배열을 반복 연결

그리고

시작된

연습문제 ㄷㄷㄷㄷㄷ

 

 

미친듯이 코드치기 !!!!!!

 

 

결과값

이,,이겼다,,,,

 

 

 

브로드캐스팅이라는 개념이 있어용

넘파이에서는 서로 다른 크기를 가진 두 배열의 사칙 연산을 지원해준답니다 ^^!

이런식으로용

 

 

실제로 코드를 적용한걸 볼까요?

 

 

 

굿,,, 언제나 ㅏ 잘 된 코드는 너무 좋아요,,

 

이친구는 처음보는 친구라서

적어주는데용

 

np.newaxis를 사용하게되면 1을 추가해줍니당.

 

보면 우리 y친구는 0부터 4까지 배열을 가지게 되죠?

원래라면 [0,1,2,3,4]가 됐을겁니다..

그런데! 왜 저렇게 됐을까요?

 

바로 np.newaxis를 사용해

(1,5)가 되었기 때문이에용,,,,

앞에 저렇게 5라는 숫자가 있다면 (5,1) -> (1,5)로 바꿔주는

아주 무서운 친구랍니다,,....

 

이번에는 차원 축소에 대해서 알아볼거에용~

차원축소 : 1차원벡터로 나오는 것

최대/최소 min, max, argmin, argmax
통계 sum, mean, median, std, var
불리언 all, any

 

 

모르는 개념들 몇개 찾아봅시다~

argmin은 최솟값의 위치입니다.

그럼 당연히 argmax는 최댓값의 위치겠죠?

 

all은 모든 값이 True일 때 True를 반환합니다.

any는 하나라도 True면 True를 반환합니다.

 

 

 

2차원은 조금 헷깔릴 수 있어용,,

 

axis=0이면 열, axis=1이면 행입니당,,

 

이해가 매우 잘되죠??!

 

dustmqsns

결과 끝!

 

 

드디어 찾아온 점심시간,,,,,,,,,,,,,,,,,,,,,,,,

네고왕에서 롯데리아 행사를 했더라구용

맛있게 먹었습니다 ^U^

 

그리고 후식으로

아이스크림까지,,, ㄷㄷ

베라에서 다른조원들도 만나보고 재밌었네용 ;;;

 

 

 

 

다시 시작된 파이썬 라이브러리 타임~~!1!!!

sqrt 제곱근 계산
exp  자연상수를 지수함수로 변환
maximum 여러 array 사이에서 각 위치의 최대값을 가져옴
modf 부동 소수점 값 분리
where ex) where(조건)
where(조건, 참, 거짓)
조건에 맞는 값 찾기
mean 평균 계산

 

 

이건 알아두면 좋을 것 같아서 남겨용

 

axis=1은 행, axis=0은 열이라고 했죠?

아까 그거 기억나죠?? 같은겁니다!

 

 

 

cumsum 누적합
cumprod 누적곱

예시

unique 중복된 원소 제거
bincount 0부터 길이(minlenght)-1 까지 카운트

예시

 

 

 

 

쉬는시간을 주세욥!!!!

 

 

 

 

잘,, 알아두십쇼

신기한건

친구랑 값이 똑같아요bb

 

 

numpy.random.choice(a, size=None, replace=True, p=None)

a는 배열이나 정수입니다. 범위라고 생각하면 됩니다.

size는 뽑을 개수를 적는 것입니다.

replace는 기본적으로 True인데 True이면 한번 선택한 데이터를 다시 선택 가능하고(중복가능)

False인 경우에는 중복 불가능 입니다.

p는 배열로 각 데이터가 선택될 수 있는 확률입니다.

 

None은 꼭 입력하지 않아도 됩니다. 하지만

원하는 조건이 있을 경우에는 입력해주는 것이 좋습니다.

 

 

랜덤함수 지금까지 많이 했죠?

근데 정의는 처음보죠?? ㅎㅎ

여기서 가볍게 정리하고 갑시다...

rand 0부터 1사이의 균일 분포
randn 표준 정규 분포
randint 균일 분포의 정수 난수

 

 

 

sort는 정렬입니다.

뭐 할말이 없네요 그냥 쓰면

알아서 정렬됩니다.

 

이건 랜덤함수를 뽑아서 5행 3열로 해놓고

행으로 정렬한 것입니다.

보시면 행이 오름차순으로 잘 정렬되어있죠?? ㅎㅎ 굿.~

 

당연히 1이 행이면?

 

 

0은 열이다~!

박수 : 짝짝짝짝짝짝

 

 

 

 

argsort 이친구는 순서를 알고싶을 때 사용하는거에용

예시를 함 볼까요?

 

대박,,,, 데이터가 많을 때 정말 유용하겠죠? 굿~

 

 

 

작품

종이빨대에 뚫린 카프리썬

 

 

 

 

 

굿 ~

이제는 pandas 판다스를 해볼거에용!!

 

일단 Pandas는 표 형식의 데이터나 다양한 형태의 데이터를 다루는 것 입니다.

시리즈 클래스와 데이터프레임 클래스를 제공하는데

그 중에서 시리즈 클래스를 먼저 경험해 볼거에용~~!

 

이렇게 선언하게 되구용

 

시리즈는 일련의 객체를 담을 수 있는 1차원 배열 같은 자료구조 입니다.

시리즈 객체는 라벨 값에 의해 인덱싱 가능해서

딕셔너리 자료형과 같다고 볼수도 있어용!

 

출력되는 결과를 보니까 이해가 쪼끔 가죠?

 

values를 입력하면 들어있는 값을 알려주고

index를 입력하면 시작값과 마지막값, 그리고 증가값도 알려줍니다

최고~~!

 

 

이렇게 인덱스 값도 지정해줄 수 있고

인덱스 값으로 불러올 수 있습니다.

 

 

reindex 재배열, 없는 인덱스는 NaN으로 나옴

그래서 인덱스가 abcd순서대로 정렬이 됐네요

 

아까 말했던 것중에 시리즈가 딕셔너리 자료형과 같다고 말했죠?

이런걸 말하는 겁니다 ^^!

 

다리저려요..

오늘 집갔다가 수영장 갈까봐용,,

사실 저 새벽수영 등록햇는데

둘째 주 빼놓고 한번도 못갔어요,,

저녁이라도 가서,, 운동을 하고 오겠다는 마음가짐...

 

결과값을 잘 기억해주세요

 

 

왼쪽은 값이 비어있는게 True이고

오른쪽은 값이 비어있지 않은게 True입니다

 

와,, 대박 이해 쏙쏙간다,,,,,,,,,,,,,,,,,,,,,

 

 

시리즈이름과 인덱스 이름을 지정할 수 있다..

와 대-박.

 

 

이렇게 두개의 인구데이터가 있을 때

두개의 인구 데이터 차이를 구하고 싶을 수 있습니다

 

만약 s - s2를 하게 된다면 인덱스를 기준으로 차이를 구해주기 때문에

서울은 서울끼리 인천은 인천끼리 해주게됩니다.

 

하지만 

s.values - s2.values로 하는순간 인덱스 기준이 아니라

있는 위치대로 계산되게 됩니다. ^^!

그냥 지맘대로 계산해주네요 친절하다.^^777777

 

이친구도 똑같이

비어있지 않은 값 찾을 수 있어요 ^^! 헤헷

 

 

 

 

 

이렇게 오늘의 수업도 끝이 났습니다...

대박대박,,,,,,,,,,,,,,,,

 

 

 

 

 

아디오스!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

+ Recent posts