본문 바로가기

Python95

DRF 예제1 : Django REST Framework □ Django 와 DRF 차이점특징Pure DjangoDjango Rest Framework개발 목적웹 풀스택 개발백앤드 API 서버 개발개발 결과웹 페이지를 포함한 웹 서비스여러 클라이언트에서 사용할 수 있는 API 서버응답 형태HTMLJSON다른 파일templatesSerializers.py □ REST API 서버를  만들기 위한 라이브러리□ 백엔드 서비스를 위해 JSON과 같은 규격화된 데이터 제공□ JSON과 같은 양식으로 다양한 플랫폼의 클라이언트에게 데이터를 제공해줄 수 있는 API 서버 프로젝트임 □ 설치 및 실행  ○ 설치(프로젝트 생성 및 app 생성 후)pip install djangorestframework==3.13.1    ○ 설치가 끝났다면 project > settings... 2024. 5. 18.
Todo : Update □ 이전글  ○ Todo 리스트를 등록하고 조회할 수 있는 웹을 구현하고자함  ○ 추가로 등록된 리스트 중 완료로 처리할 수 있고 완료된 리스트만 따로 조회할 수 있도록 구현하고자함  ○ todo 라는 app을 생성하였고 app의 admin.py에 아래와 같이 추가하였음https://dandora-90.tistory.com/348 Todo : Create, Read□ Todo 리스트를 등록하고 조회할 수 있는 웹을 구현하고자함□ 추가로 등록된 리스트 중 완료로 처리할 수 있고 완료된 리스트만 따로 조회할 수 있도록 구현하고자함□ todo 라는 app을 생성하dandora-90.tistory.com □ 이번엔 등록된 글을 수정하고 완료처리에 따라 별도 조회할수 있는 기능을 구현하고자함□ 코드  ○ V : .. 2024. 5. 15.
슈퍼유저(SuperUser) 생성 및 어드민 페이지 1. /admin/ 페이지 접속을 하면 로그인 화면이 나옴 2. 로그인을 위해 우리는 관리자 계정을 생성해줘야함.  (1) Username  (2) Email address  (3) Password  (4) 커맨드 명령어py manage.py createsuperuser 2024. 5. 2.
Models 생성 Django 모델(Models)란? □ 프로젝트에서 애플리케이션(App)을 생성하고, 앱(APP) 기능 별 여러 데이터 값들을 생성, 수정, 삭제, 저장등을 위한 데이터 관리를 위해 테이블 객체를 생성하는데 이를 위한 것이 모델(Models)임. □ 그래서 우리는 해당 모델을 사용하여 테이블을 생성하기전에 데이터를 어떻게 처리할지 고민해야함 □ 우리는 프로젝트 생성 후 관리자, 즉, 슈퍼유저(admin)를 만들기위해 기본 테이블이 필요하여 생성전에 유저 데이터들이 저장될 수 있는 테이블을 생성했음. python manage.py migrate □ 위 코드를 실행하여 프로젝트 생성시 필요한 기본적인 테이블과 앱들을 설치했으며, 설치된 앱들은 모두 환경설정폴더에 모두 저장되었고, 환경설정 폴더는 최상위 폴더.. 2024. 4. 13.
앱(App) 생성 및 Urlpatterns 정의 □ 앱(App)이란? ○ 기본적으로 App=Application=program 같은 의미로 생각하면 됨. ○ 프로젝트는 큰 개념이고 앱은 그 하위의 작은개념임. ○ 큰 프로젝트 안에서 필요한 프로그램들의 단위. ○ 즉, 앱은 프로젝트 내에서 특정한 기능을 수행하는 프로그램 단위. ○ urls.py 는 별도생성해줘야함.(최상위 urlconfig 제외, 최상위 앱은 자동으로 생성됨) □ 프로젝트 및 앱 생성 명령어 #프로젝트 생성 명령어 django-admin startproject 프로젝트명 #앱 생성 명령어 python manage.py startapp 앱명 ※ 대표 상위 앱 디렉토리에는 urls.py 파일이 자동으로 생성되지만, 하위 앱으로 생성된 디렉토리에는 urls.py가 자동으로 생성되지 않기에 .. 2024. 4. 11.
가상환경 설치 & 장고 설치+삭제 & 서버구동 + superuser 생성 1. cmd > 설치 파이썬 버전 확인 python 입력 2. 가상환경 구축 > 구축 가상환경 디렉토리 진입 > 활성화 > 장고설치 - 구축 1 : python -m venv 가상환경명 - 구축 2 : pip install vitualenv & vitual 가상환경명 3. 가상환경 디렉토리 이동 > Scripts 디렉토리 > activate.bat 실행 > 가상환경 안에서 pip install Django 4. 장고 버젼 확인 - python 파일 생성후 import Django & print(djongo.get_version()) - python -m django -- version 5. 가상환경 빠져나오기 : deactivate 6. 장고프레임워크 삭제 - md 디렉토리명 - rd 디렉토리명 - /s.. 2024. 4. 8.
피처 스케일링(스탠다드 스케일러, 민맥스 스케일러) □ 피처 스케일링 ○ 표준화는 데이터의 피처 각각이 평균이 0이고 분산이 1인 가우시안 정규분포를 가진 값으로 변환하는 것 ○ 정규화는 서로다른 피처의 크기를 통일하기위해 크기를 변환해주는 것 - standardScaler : 평균이 0이고, 분산이 1인 정규 분포형태로 변환 (z score 변환) - MinMaxScaler : 데이터의 값을 0과 1사이의 범위 값으로 변환(음수값이 있으면 -1 ~ 1값으로 변환) *선형회귀, SVM 등은 스캐일링 기법등에 민감함 □ 코드 ○ 데이터 불러오기 및 평균, 분산 값 구하기 from sklearn.datasets import load_iris import pandas as pd iris = load_iris() iris_data = iris.data iris_.. 2024. 4. 6.
데이터 인코딩(레이블 인코딩, 원-핫 인코딩) □ 데이터 전처리 ○ 데이터클린징 ○ 결손값 처리(NULL/NaN처리) ○ 데이터인코딩(레이블,원핫인코딩) *머신러닝은 문자열을 취급하지않기 때문에 숫자열로 치환해야함 ○ 데이터스케일링 ○ 범위 척도를 맞추는것 ○ 이상치 제거 ○ Feature 선택, 추출 및 가공 □ 데이터 인코딩 : 머신러닝 알고리즘은 문자열 데이터 속성을 입력 받지 않으며 모든 데이터는 숫자형으로 표현되야함 ○ 레이블(Lable) 인코딩 - LabelEncoder 클래스 - fit(), transform() 이용 #데이터 인코딩 : 레이블 인코딩 from sklearn.preprocessing import LabelEncoder items = ["TV","냉장고","전자랜지","컴퓨터","선풍기","선풍기","믹서","믹서"] # .. 2024. 4. 6.
비지도학습 : K-means(평균) 알고리즘 □ K-means(평균) 알고리즘 ○ 평균값이 클러스터 중심에 위치하기 때문에 클러스터 중심 또는 센트로이드라고 부름 ○ 무작위로 k개의 클러스터 중심을 정함 ○ 각 샘플에서 가장 가까운 클러스터 중심을 찾아 해당 클러스터의 클러스터의 샘플로 지정 ○ 클러스터에 속한 샘플의 평균값으로 클러스터 중심을 변경 ○ 클러스터 중심에 변화가 없을때까지 2번으로 돌아가 반복 □ 코드 **비지도학습이라 fit 과정에서 타겟데이터를 사용하지 않음. ○ 데이터 로드 #데이터 로드 import numpy as np fruits = np.load("C:/dPython/fruits_300.npy") fruits_2d = fruits.reshape(-1,100*100) #차원죽소를 통한 2차원 변경 for 모델훈련을 위해 fr.. 2024. 4. 6.