데이터 시각화**(data visualization)** 점이나 선, 막대 그래프 등의 시각적 이미지를 사용하여 데이터를 화면에 표시하는 기술 효과적인 시각화는 사용자가 데이터를 분석하고 추론하는 데 도움 데이터를 직관적으로 이해 matplotlib 데이터 시각화 도구 선 그래프, 산포도 등 다양한 그래프 그리는 용도 맷플롯립 활용 단계 pyplot 모듈 불러오기 import matplotlib.pyplot as plt plt 별칭 사용 수치 데이터 정의 → 리스트, 넘파이 배열 2차원 데이터 → x축 데이터, y축 데이터 x축, y축 데이터 개수 동일 그래프 종류 결정 선 그래프 → plot() 함수 그래프 세부 설정은 인자로 전달 → 선 색, 마크 종류, 선 두께 등 제목, y축 레이블 설정 titl..
분류 전체보기
판다스(Pandas) 데이터 분석을 위해 만들어진 파이썬 패키지(라이브러리) 엑셀처럼 행과 열로 이루어진 표 형태의 데이터를 처리 대부분의 데이터는 시계열(series)이나 표(table)의 형태 판다스 패키지 시리즈(Series) 클래스, 데이터프레임(DataFrame) 클래스 제공 cf) 넘파이 2차원 배열 행렬 matrix 형태의 데이터를 지원 데이터의 속성을 표시하는 행이나 열의 레이블이 없음 판다스 특징 다양한 형태의 데이터에 적합 이종 자료형의 열을 가지는 표 데이터 시계열 데이터 레이블을 가진 행렬 데이터 관측 통계 데이터 핵심 구조 시리즈(Series) 1차원 구조를 가지는 하나의 열 데이터 프레임(DataFrame) 복수의 열을 가지는 2차원 데이터 각각의 열을 시리즈, 시리즈가 모여 데..
AI 데이터 분석 과정 데이터 수집 오픈데이터 API, 웹 크롤링, 파일 읽기, DB 액세스 데이터 종류 정형데이터(Structure data) 미리 정해진 형식으로 구조화된 데이터 예) 엑셀 시트, RDBMS 테이블 반정형데이터(Semi-structure data) 특정한 형식에 따라 저장된 데이터이지만 정형데이터와 달리 형식에 대한 설명을 함께 제공 구조를 해석하는 파싱(일종의 번역) 과정이 필요하며 파일 형태로 저장 예) XML, JSON 비정형데이터(Unstructured data) 정해진 구조가 없이 저장된 데이터 빅데이터의 대부분을 차지 예) 텍스트, 영상, 이미지 SNS 데이터 소스 데이터가 존재하는 곳 미디어(SNS등) ,클라우드 , 웹, 사물인터넷, 데이터베이스 , 오픈 데이터/ API ..
AI 데이터 분석 과정 데이터 수집 오픈 데이터 API, 웹 크롤링, 파일 읽기, DB 엑세스 데이터 전처리 : 넘파이**,** 판다스 활용 데이터 클린징**,** 데이터 연결과 병합**,** 데이터 재구조화 데이터 분석/응용 데이터 시각화(맷플롯립 활용), 기계학습 데이터 클린징 • 편향 없이 명확하고 깨끗한 데이터를 확보하는 작업 데이터 클린징 작업 결측 데이터 처리 결측 데이터 확인 결측 데이터 대체/제거 [평균 대체법] 결측 데이터 반영 확인 이상 데이터 처리 이상 데이터 확인 이상 데이터 대체/제거 이상 데이터 처리 확인 중복 데이터 처리 중복 데이터 확인 중복 데이터 처리(유일한 1개 키만 남기고 나머지 중복 제거) 결측 데이터 결측값(Missing data) 데이터 누락값 결측값이 있는 상태..
인공지능 vs 기계학습 vs 딥러닝 인공지능 (Artificial Intelligence) 인간처럼 학습하고 추론하는 프로그램 연구 기계학습 (Machine Learning) 인공지능의 한 분야 프로그래밍 없이 스스로 학습하는 프로그램 연구 딥러닝 (Deep Learning) 기계 학습의 한 분야 인공 신경망 등을 사용하여 빅데이터로부터 학습하는 프로그램 연구 전통 프로그래밍과 머신러닝 프로그래밍 전통 프로그래밍 머신러닝 프로그래밍 머신러닝은 정답에 가까운 예측을 내는 것 기계 학습 응용 분야 기계 학습의 분류 지도 학습이 결과가 제일 좋음 지도 학습(Supervised Learning) 컴퓨터는 "교사"에 의해 주어진 예제와 정답(혹은 레이블)을 제공받음 지도학습의 목표 입력을 출력에 매핑하는 일반적인..
Nginx Proxy Manager 무료 SSL인 Let's encrypt 인증서를 자동으로 생성/갱신 리버스 프록시 서버 GUI 관리 여러 개의 웹 서버를 관리 여러 개의 도메인 관리, 서브 도메인 관리 🔗 https://nginxproxymanager.com/ 다른 포트를 열지 않고 80, 443 포트 오픈만으로 소유한 도메인에 쉽게 매핑이 가능합니다. 예: 🔗 http://localhost:8080 ⇒ https://sub.yourdomain.com http://localhost:5555 ⇒ https://sub3.domain.com 80, 81, 443 포트 오픈해야됩니다.(방화벽) → 81번 포트는 오픈하지 않아도 되지만 80, 443번 포트는 letsencrypt 인증서 발급을 위해 꼭 오픈해..
해당 글은 ubuntu 22.04(AArch64) 기준입니다. ARM Docker 설치(스크립트로 자동설치) 🔗 curl -fsSL https://get.docker.com -o get-docker.sh # docker 스크립트 curl -fsSL https://get.docker.com -o get-docker.sh # 다운로드 받은 스크립트 실행 bash get-docker.sh ARM Docker-compose 설치 🔗 wget https://github.com/linuxserver/docker-docker-compose/releases/download/1.29.2-ls53/docker-compose-arm64 # Docker Compose 설치 apt install docker-compose cd..
JSP 스크립트릿으로 데이터베이스 연동 JSP 페이지와 데이터베이스의 직접적인 연동 JSP 페이지 내에서 직접 데이터베이스 관련 코드가 혼재됨 추후 페이지 변경 등의 작업이 있을 때 불편함 자바빈즈(Java Beans) 사용의 장점 내부적 데이터 처리와 공용화된 기능은 JSP 빈즈로 구현 프로그램 중복을 줄이고 원활한 유지보수 가능 한번 작성된 자바 빈즈를 여러 응용 프로그램에서 재사용 가능 JDBC 연동 JSP —> 자바빈즈로 빼서 연동 JSP : 화면 출력 자바빈즈 : DB를 처리를 하는 곳 서블릿 : 실제 쿼리문을 실행하는것 ConnectionPool을 사용한 데이터베이스 연결 ConnectionPool이란? 웹 프로그램에서 데이터베이스 연결, 질의 입력, 결과를 받아오는 부분에서 많은 시간 소요됨..