본문 바로가기

파이썬141

3_Pandas - Series Pandas - Series Parameters and Argument 파라미터 (매개 변수)는, 기대되는 입력값에 부여하는 이름이다 메서드 또는 함수에 입력값을 받아드릴 수 있다 Argument는 함수 또는 메서드에 제공하는 실질적인 값을 나타낸다 def add(a, b): return a + b print(add(1, 6)) 여기서 def add(a, b): 에서 a와 b는 매개 변수다 add(1, 6)의 1과 6은 add라는 함수에 실질적으로 입력되는 값으로, argument라고 할 수 있다 즉 parameter를 지정하고, 지정한 parameter에 argument라는 실질적인 값을 넣어서 함수 또는 메서드를 실행한다 pd.Series(data = fruits, index = weekdays) 이.. 2023. 4. 22.
2_Pandas - Series Pandas - Series Methods (메서드) 객체에게 명령을 하는 것이다 메서드를 이용하여, 기존 값을 수정하거나, 기존 값을 토대로 새로운 값을 만들어 낸다 아래의 메서드들은 새로운 값을 출력해준다 .sum() : prices 안에 있는 값들을 모두 더하기 .product() : prices 안에 있는 값들을 모두 곱하기 .mean() : prices 안에 있는 값들의 평균값 구하기 .median() : prices 안에 있는 값들의 중간값 구하기 즉 위의 메서드들은 prices의 값들을 가지고, 새로운 값을 만들어내는 메서드들이다 Attributes (속성) 객체의 세부 사항이나 특성 등을 말하는 것이다 객체 자체를 설명하는 것이다 Series 안에 있는 값들에 대한 '정보'를 알려준다 .s.. 2023. 4. 21.
1_Pandas - Series Series는? 1차원이면서 라벨이 붙은 배열이다 하나의 열이라고 생각하면 된다 Series는 여러 가지의 데이터를 순서대로 저장하고, 요소의 위치를 정할 수 있다 (리스트와 같이) 딕셔너리에 key와 value가 있듯이, 값의 식별자 (key)를 할당할 수 있다 Series는 클래스다 (블루프린트) 리스트로 Series 만들기 저장한 ice_cream 들은 순서대로 Series로 저장되었다 Out[2]에서 숫자들은 인덱스다 (기본적으로 0부터 시작해서 1씩 더해준다) 인덱스는 사용자가 지정할 수 있다 지정하지 않을 경우, 값들을, 기본 인덱스로 지정한다 dtype가 숫자일 경우 int 로 나타날 것이다 dtype가 boolean일 경우 (True or False), bool 로 니타날 것이다 딕셔너리로.. 2023. 4. 20.
데이터 분석 - Pandas 데이터 분석 - Pandas 파이썬의 라이브러리다 Pandas는 데이터 분석, 필터링, 조작, 집계, 병합, 피벗 등을 할 수 있다 데이터를 가공하거나 분석을 할 때에 Pandas를 사용하는게 좋다 엑셀보다 더 강력하다 (즉 더 많은 데이터를 다룰 수 있다) 아나콘다란? 오늘 인턴으로 첫 출근을 했는데, 아나콘다 라는 것을 다운로드 받았다 웹 풀 스택 개발을 했지만, 데이터 분석 파트 인턴으로 입사를 했고, 아나콘다는 처음 보게 되었다 아나콘다는 머신러닝이나 데이터 분석을 할 때에, 필요한 여러가지 패키지가 기본적으로 포함되어 있는 파이썬 배포판이다 사수님이 가상 환경을 구축할 때에도 아나콘다를 사용한다고 했다 기존에는 venv를 사용하며 패키지 하나하나 추가로 설치를 했다 하지만 아나콘다를 사용하며 따.. 2023. 4. 10.
데이터 분석 - PyTorch PyTorch [무엇인가?] 페이스북의 루아 언어로 개발된 Torch를 파이썬 버전으로 바꿔서 PyTorch라고 한다 NumPy와 비슷하다 GPU를 활용하여 인공 신경망 모델을 만들고 학습시킬 수 있게 도와준다 PyTorch의 구성요소 torch : 메인 네임스페이스, 텐서 등의 다양한 수학 함수가 포함 텐서 (Tensor) : 수학적인 개념으로 데이터의 배열로 생각할 수 있다 torch.autograd : 자동 미분 기능을 제공하는 라이브러리 torch.nn : 신경망 구축을 위한 데이터 구조나 레이어 등의 라이브러리 torch.multiprocessing : 병렬처리 기능을 제공하는 라이브러리 torch.optim : SGD (Stochastic Gradient Descent)를 중심으로 한 파라미터.. 2023. 4. 10.
[Python] 백준 14888 연산자 끼워넣기 🧑‍💻 [Python] 백준 14888 연산자 끼워넣기 Silver 1 - DFS DFS로 풀이를 했다 코드 min_num = 1e9 max_num = -1e9 N = int(input()) numbers = list(map(int, input().split())) operators = list(map(int, input().split())) def dfs(num_depth, total, plus, minus, multiply, divide): global min_num, max_num if num_depth == N: min_num, max_num = min(total, min_num), max(total, max_num) return if plus > 0: dfs(num_depth + 1, total.. 2023. 4. 7.
[Python] 백준 9663 N-Queen 🧑‍💻 [Python] 백준 9663 N-Queen Gold 4 - Backtracking Queen은 위, 아래, 오른쪽, 왼쪽, 대각선, 8 방면 모두 공격을 할 수 있다 N이 주어지고, 체스판 사이즈는 N x N 이고, N 개의 Queen을 넣었을 때 서로 공격할 수 없는 때의 경우의 수를 찾는 것 1차적으로 자세히 보면, 각 행과 열마다, Queen은 하나씩 배치할 수 있다 이 뜻은 굳이 체스판 자체를 안 만들어도 된다 board = [0, 3, 1, 4, 2] 아래 사진을 표현한 리스트 (board의 인덱스가 열/row, board의 값이 행/column) board 안에 있는 값들은 모두 달라야 한다 row (board의 인덱스) column (board의 값) 0 0 1 3 2 1 3 4 4.. 2023. 4. 5.
[Python] 백준 15650 N과 M 2 🧑‍💻 [Python] 백준 15650 N과 M 2 Silver 3 - Backtracking 쉽게 itertools의 combinations를 사용해서 풀 수 있는 문제다 하지만 Backtracking을 공부하고 싶어서 풀었던 문제다 기본적으로 if len(nums) == M: 을 통해서 재귀 함수의 base case를 만든다 안 만들면 무한 루프 리스트 안에 for문을 돌며, 나오는 숫자가 없을 때, 리스트 안에 해당 숫자를 넣고 backtracking(start)를 다시 돈다 여기서 중요한 것은, 수열이 오름차순이어야 한다는 것이다 그래서 재귀함수를 돌릴때마다 backtracking(start + 1)를 해야 한다 그렇게 하면, for문에서 전에서 backtracking() 했던 것보다, 큰 수부터.. 2023. 4. 2.
[Python] 백준 15649 N과 M 🧑‍💻 [Python] 백준 15649 N과 M Silver 3 - Backtracking 쉽게 itertools의 permutations를 사용해서 풀 수 있는 문제다 하지만 Backtracking을 공부하고 싶어서 풀었던 문제다 기본적으로 if len(l) == M: 을 통해서 재귀 함수의 base case를 만든다 안 만들면 무한 루프 리스트 안에 for문을 돌며, 나오는 숫자가 없을 때, 리스트 안에 해당 숫자를 넣고 dfs()를 다시 돈다 그리고 l.pop()을 해야, 리스트에 숫자가 사라지고, 다른 경우의 수를 넣을 수 있다 코드 백트래킹 사용 N, M = map(int, input().split()) l = [] def dfs(): if len(l) == M: print(" ".join(ma.. 2023. 4. 2.