오늘의 생각
본격적으로 부트캠프가 시작되었다고 느껴지는 하루였다.
하루 종일 특강이었는데, 지난 주 (1~2일차)의 파이썬 온라인 강의와 상당히 유사했다. 때문에 복습 개념으로 임하면서 들었다. 문제는 이 외에 별도로 부트캠프에서 "권장"하는 학습량이 추가적으로 있는데, 7시에 특강이 끝나고 12시 넘어까지 들어서야 겨우 다 들을 수 있었다.
너무나도 바쁜 하루였다.
그치만...7개월이라는 짧은 시간 안에 빠르게 습득하려면 그만큼 노력이 필요하니, 달갑게 받아들이고 꾸준히 공부하려는 의지를 다지고 있다.
오늘의 학습내용
- 대표적인 파이썬 라이브러리의 종류 및 사용 목적 (Numpy, Pandas 등)
- Numpy
- Numpy 라이브러리에서의 배열
- Numpy 배열 대표 속성값
- Numpy 배열 생성 - .arnage() 와 .license()를 활용한 데이터 생성
- Numpy 기본 연산 - '*' 연산
- Numpy 크기 변경 데이터 합치기 / 쪼개기
- Pandas
- Pandas 데이터 형식
- Pandas 데이터 불러오기
- Pandas 데이터 내용 확인 및 선택
- Pandas 데이터 필터링 / 결측치 제거
- Pandas 데이터 통계 활용하기 / 보는 법
추가적으로 알게 된 내용
1. 지수 함수 (np.exp)
지수 함수는 (Exponential Function)는 Numpy 라이브러리에 내장된 변수의 값이 지수로 나타나는 함수다.
# c는 임의의 변수 (실수)
d = np.exp(c*1j)
print(d)
print(d.dtype)
코드는 비교적 단순한데, 여기서 말하는 "1j"란 것이 어디에서 온 것인지, 무엇을 의미하는지 잘 몰라서 좀 찾아보았다.
j는 파이썬에서 허수 단위를 의미한다. 즉, j는 복소수의 허수 부분을 표시하는 기호로, 수학에서 허수 단위 i (i.e., −1\\sqrt{-1}−1)에 해당한다. 따라서 1j 는 0+1j0 + 1j 0+1j로 표현되는 순수 허수이다.
블로그로 수학적 기호를 쓰는데 한계가 있는데, GPT의 결과를 공유한다.
여전히 꽤 복잡한 설명인데, 목적만 설명하자면 실수를 복소수로 변경하는 과정에서 사용되는 함수이다.
2. np.arrange X np.arange O
실습 과정에서 의외의 부분에서 보틀넥이 있었는데, 바로 np.arange() 함수를 사용하는 과정에서 발생했다.
알고보니 오타 문제였다. 발음상 arrange(배열하다)의 뜻의 단어를 사용하는 줄 알았는데, r이 하나 없는 arange의 문제였다.
당연히 의문이 들었다.
아니 왜 굳이 오타를 문법으로?
Numpy가 굉장히 유용한 라이브러리이고 사용자가 그렇게 많은데 굳이 이렇게 두나? 라는 의문이 들어 찾아보았다.
공식문서를 통해 답을 도출할 수 있었는데, 공식문서에서 arange 함수에 대해 "roughly equivalent to the Python built-in range, but returns an ndarray rather than a range instance."라고 설명되어 있다. 문장을 해석해보자면 python의 내장 메서드 range 함수와 비슷한 기능을 하기 위한 함수이기 때문에 "a range"의 의미로 표현했다는 것으로 볼 수 있다.
실제로 많은 사람들이 이 부분에서 의문을 표한다고하니, 나도 그저 범부일 뿐이구나 라는 생각이 들었다.
'개발자 일기 > 일일회고 (TIL)' 카테고리의 다른 글
[Upstage AI Lab]부트캠프 7일차 (0) | 2024.11.23 |
---|---|
[Upstage AI Lab]부트캠프 4~6일차 (1) | 2024.11.21 |
[Upstage AI Lab]부트캠프 2일차 (3) | 2024.11.15 |
[Upstage AI Lab]부트캠프 1일차 (4) | 2024.11.14 |
[원티드 프리온보딩 9월]3회차 회고 (1) | 2024.09.16 |
댓글