분류 전체보기 62

03. FastAPI - Request Body(JSON), Form(HTML) 처리

FastAPI - Request Body 및 Form 데이터 처리FastAPI에서는 클라이언트로부터 데이터를 받을 때, 전송 방식에 따라 JSON(Request Body) 또는 Form(FormData)으로 분리하여 처리할 수 있다. 요청 방식에 따라 HTTP 요청 헤더의 Content-Type이 달라지고, FastAPI는 이를 기반으로 적절하게 데이터를 파싱한다.📦 Request Body 처리 (application/json)✅ 기본 사용: Pydantic 모델 기반 요청from fastapi import FastAPIfrom pydantic import BaseModelfrom typing import Optionalapp = FastAPI()class Item(BaseModel): name:..

02. FastAPI - Request Parameter

FastAPI에서 Path Parameter와 Query Parameter 사용법FastAPI에서는 경로 매개변수(Path Parameters)와 쿼리 매개변수(Query Parameters)를 선언적으로 정의할 수 있으며, 이를 통해 요청값을 유효성 검사하고 문서화할 수 있다1. Path Parameter경로 매개변수는 URL 경로의 일부로, 중괄호 {}를 사용하여 정의한다from fastapi import FastAPIapp = FastAPI()@app.get("/items/{item_id}")async def read_item(item_id: int): return {"item_id": item_id}요청 예시:http://localhost:8000/items/3 → 정상http://local..

01. FastAPI - 시작하기

FastAPI 시작하기1️⃣ 가상 환경 만들기 (conda)먼저 FastAPI를 설치할 가상환경을 만들어 주자.Anaconda Prompt를 열고 아래 명령어 입력:conda create -n fastapi python=3.10Proceed ([y]/n)? 나오면 y 입력 가상환경이 'FastAPI'라는 이름으로 생성되었고, 아래 명령어로 진입:conda activate fastapi2️⃣ FastAPI 설치가상환경에 진입했다면 아래 명령어로 FastAPI를 설치:pip install fastapi 특정 버전으로 설치하고 싶다면 아래처럼 입력:pip install fastapi==0.111.13️⃣ FastAPI 실행main.py 파일을 만들어 아래와 같이 작성:# FastAPI importfrom fa..

추천 알고리즘 - TF-IDF, CountVectorizer 활용한 코사인 유사도 기반 텍스트 분석

본 자료는 다음 링크의 내용을 참고하였습니다.Reference : https://www.kaggle.com/code/ibtesama/getting-started-with-a-movie-recommendation-system영화 추천 시스템Demographic Filtering (인구통계학적 필터링)Content Based Filtering (컨텐츠 기반 필터링)1. Demographic Filtering (인구통계학적 필터링)import pandas as pdimport numpy as np# 영화 data 로드df1 = pd.read_csv('../data/tmdb_5000_credits.csv')df2 = pd.read_csv('../data/tmdb_5000_movies.csv')'id' 기준으로 ..

05. (비지도학습)_K-Means

5. K-Means군집화, 유사한 특징을 가지는 데이터들을 그룹화데이터를 K개의 클러스터(그룹)로 군집화하는 알고리즘,각 데이터로부터 이들의 속한 클러스터의 중심점(Centroid)까지의 평균 거리를 계산import numpy as npimport matplotlib.pyplot as pltimport pandas as pddataset = pd.read_csv('../data/KMeansData.csv')dataset.head() hourscore07.337313.715523.435533.068943.3379비지도 학습이기 때문에 y 값 없이 X만 가져옴X = dataset.iloc[:, :].values# X = dataset.values# X = dataset.to_numpy() # 공식 홈페이지 ..

04. (지도학습)_Logistic Regression(로지스틱 회귀)

4. Logistic Regression(로지스틱 회귀)공부 시간에 따른 자격증 시험 합격 가능성주어진 데이터를 정해진 범주 (category) 에 따라 분류, 예측 결과가 숫자가 아닐 때선형 회귀 방식을 분류에 적용한 알고리즘,데이터가 어떤 범주에 속할 확률을 0 ~ 1 사이의 값으로 예측더 높은 범주에 속하는 쪽으로 분류범주 : True/False, Yes/No, 합격/불합격import numpy as npimport matplotlib.pyplot as pltimport pandas as pddataset = pd.read_csv('../data/LogisticRegressionData.csv')dataset.head() hourpass00.5011.2021.8032.4042.60X = datase..

03. (지도학습)_Polynomial Regression(다항 회귀)

3. Polynomial Regression(다항 회귀)공부 시간에 따른 시험 점수 (우등생)import numpy as npimport matplotlib.pyplot as pltimport pandas as pddataset = pd.read_csv('../data/PolynomialRegressionData.csv')dataset.head() hourscore00.2210.5420.8630.9441.26X = dataset.iloc[:, :-1].values # 공부시간 컬럼 데이터y = dataset.iloc[:, -1].values # 점수 컬럼 데이터X, y(array([[0.2], [0.5], [0.8], [0.9], [1.2], ..

01. (지도학습)_Linear Regression(선형 회귀)

1. Linear Regression(선형 회귀)공부 시간에 따른 시험 점수import matplotlib.pyplot as pltimport pandas as pddataset = pd.read_csv('../data/LinearRegressionData.csv') # 데이터 로드dataset.head() # 상위 5개 데이터 확인 hourscore00.51011.2821.81432.42642.622X = dataset.iloc[:, :-1].values # 처음부터 마지막 컬럼 직전까지의 데이터 (독립 변수 - 원인)y = dataset.iloc[:, -1].values # 마지막 컬럼 데이터 (종속 변수 - 결과)X, y(array([[ 0.5], [ 1.2], [ 1.8]..

플로이드 워셜 알고리즘 - 미래 도시

미래 도시 (Python)📝 문제 설명미래 도시에는 1번부터 N번까지의 회사가 있는데 특정 회사끼리는 서로 도로를 통해 연결되어 있다.방문 판매원 A는 현재 1번 회사에 위치해 있으며, X번 회사에 방문해 물건을 판매하고자 한다.미래 도시에서 특정 회사에 도착하기 위한 방법은 회사끼리 연결되어 있는 도로를 이용하는 방법이 유일하다.또한 연결된 2개의 회사는 양방향으로 이동할 수 있다. 공중 미래 도시에서 특정 회사와다른 회사가 도로로 연결되어 있다면, 정확히 1만큼의 시간으로 이동할 수 있다.또한 오늘 방문 판매원 A는 기대하던 소개팅에도 참석하고자 한다.소개팅의 상대는 K번 회사에 존재한다. 방문 판매원 A는 X번 회사에 가서 물건을 판매하기 전에 먼저소개팅 상대의 회사에 찾아가서 함께 커피를 마실 ..