Python 192

데이터 분석 도구 - numpy(2)를 알아보자.

numpy는 간단하면서도 강력하구나. 근데 나한테는 하나도 안 간단한 것 같아...   오늘은 Numpy의 또 다른 연산들을 알아보자.  오늘의 배움NumPy의 기본 배열 연산 방법들통계 기초 개념과 NumPy로의 구현배열의 정렬과 병합 테크닉성능 최적화와 대용량 데이터 처리 방법NumPy 배열 연산의 특징NumPy 배열은 벡터화된 연산으로 매우 빠른 속도를 제공하며, 특히 대규모 데이터 처리에 최적화되어 있다. 제가 이해한 바로는:일반 파이썬 리스트보다 훨씬 빠른 연산 속도메모리 효율적인 데이터 처리다양한 수학적/통계적 함수 제공 1. ndarray 연산기본 산술 연산NumPy는 배열 간의 산술 연산을 지원하며, 이는 벡터화되어 빠르게 수행된다.배열 간 연산은 기본적으로 원소별(element-wise)..

데이터 분석 도구 - numpy(1)를 알아보자.

streamlit 하면서 아주 간단하게만 사용해 본 numpy가 데이터 분석 도구였구나.   오늘은 데이터 분석 도구인 numpy를 알아보자.  오늘의 배움리스트와 데이터 분석 도구의 관계 이해NumPy의 개념과 특징ndarray의 생성과 활용 방법데이터 접근을 위한 다양한 인덱싱 방법1.리스트, 왜 다시 공부하는가?데이터 구조의 기초리스트는 NumPy와 Pandas를 이해하는 기초가 된다:NumPy의 ndarray와의 관계리스트를 확장한 다차원 배열 구조수치 계산에 최적화된 형태Pandas와의 관계Series(1차원)와 DataFrame(2차원)의 기본 구조인덱싱과 슬라이싱 개념이 동일하게 적용2. NumPy 살펴보기NumPy란?Numerical Python의 약자로, 대규모 다차원 배열과 행렬 연산을..

데이터 분석을 알아보자.

데이터 분석은 특별한 다른 걸 사용하려나 싶었으나, python은 계속 된다.   오늘은 드디어 데이터분석에 대해 알아보자.  오늘의 배움데이터의 정의와 종류데이터 과학과 데이터 분석의 차이데이터 분석의 중요성과 활용 분야CRISP-DM 프로세스의 이해1. 데이터란 무엇일까요?모델을 학습시키려면, 다량의/양질의 데이터가 필요하다. 그렇다면, 가장 기본이 되는 '데이터'의 의미부터 알아보자. 데이터는 이론을 세우는 데 기초가 되는 사실 또는 자료이며, 컴퓨터에서는 프로그램이 처리할 수 있는 형태로 변환된 정보를 의미한다.(출처 : Oxford Languages) 2. 데이터의 종류데이터는 크게 두 가지로 나눌 수 있다:정형 데이터엑셀 표처럼 깔끔하게 정리된 데이터데이터베이스나 스프레드시트에 저장비정형 데이..

[SK캠프] 3주차 WIL 241230_250105 (뭐가 지나갔는데..)

241230 ~ 250105 SK캠프 9기 3주 차 회고 일지 내용금주 주요 성과- DataBase 학습 및 실습- Web Crawling 학습 및 실습보완해야할 점데이터베이스 개념, 웹크롤링 사용법KPT Keep일단 따라가보자.​매일 그날 학습한 걸 정리하며 약간의 복습을 하고 있다. 수업시간에 잘 듣고 같이 따라해보려 노력하고 있다.그런데... 그걸 다 떼고 '시작해보세요.' 하면 생각이 멈춰서 얼어있는 나를 발견할 수 있었다.우선 계속 따라가보자.... 따라하고 추가적으로 복습하고 문제도 많이 풀고, 자격증 공부를 함께 병행하다보면 조금씩 개념이 서고 자유롭게 코드를 입력하고 분석하고 있지 않을까...?...​ Problem많은 개념들이 머릿속에 입력되지 않았다.​빠르게 몰아치는 수 많은 개념의 바..

[SK캠프] 2주차 WIL 241223_241229 (조금 재미가 생겼다)

241223 ~ 241229 SK캠프 9기 2주 차 회고 일지 내용금주 주요 성과- python 클래스/패키지/함수- Streamlit 사용보완해야할 점파이썬의 매서드KPT Keep실현을 해보는 재미가 생겼다.​주피터 노트북을 통해 코드 실행 여부를 확인하며 문제가 있음 문제를 파악하고 해결해가는 과정이 재밌다.streamlit으로 데모버전의 프론트가 실행되는 것도 재밌다.​ Problem어떤 상황에 어떤 명령어, 메서드를 써야할 지 잘 모르겠다.​파이썬을 조금씩 따라가곤 있으나, 이 문제에 어떤 명령어와 메서드를 사용하는 건지는 아직 잘 모른다.따라하곤 있지만, 왜 이걸 쓰는 지 모르는 부분들이 있다. Try많은 문제들을 풀며 파이썬을 파악해보자.​문제를 풀기 위해 어떤걸 사용해야하는 지 모르겠다면, ..

Selenium을 알아보자.

웹자동화를 위한 도구, Selenium   오늘은 웹크롤링 도구인 Selenium을 알아보자.오늘의 배움Selenium의 개요 및 특징Selenium 함수 및 메서드 SeleniumSelenium은 브라우저를 자동화하는 도구로, 웹 페이지의 JavaScript 렌더링까지 처리할 수 있다. 브라우저 드라이버를 사용하여 실제 브라우저(예: Chrome, Firefox)를 구동하여 웹 페이지를 로드하고, 스크립트를 통해 브라우저 내에서 클릭, 입력 등의 동작을 자동화한다. JavaScript 실행을 통해 생성된 콘텐츠도 로드하여 처리할 수 있다. 따라서 웹 페이지의 인터랙션과 동적 데이터를 크롤링하는 데 유용하다. Selenium 장단점장점JavaScript로 생성된 콘텐츠를 포함하여 모든 웹 요소에 접근 가..

BeautifulSoup을 알아보자.

css, html을 같이 알아야 좋은 Beautiful Soup   오늘은 Beautiful Soup에 대해 알아보자.오늘의 배움 Beautiful Soup 특징 Beautiful Soup 주요 함수 및 메서드 BeautifulSoup  처음 BeautifulSoup을 접했을 때는 그저 HTML 문서를 파싱하는 도구로만 생각했다.하지만 실제 프로젝트에서 사용하면서, HTML 문서를 DOM 트리로 변환하여 데이터를 구조화하는 강력한 도구라는 것을 깨달았다. 파서(Parser) 선택의 중요성'html.parser'는 기본적이지만 안정적'lxml'은 속도가 필요할 때 탁월한 선택'html5lib'은 깨진 HTML을 처리할 때 유용 BeautifulSoup 장단점장점가볍고 사용법이 간단하다.HTML 구조에서 특..

[SK캠프] 17일차 TIL 250103 (웹크롤링)

Intro프로젝트 진행 중 마주한 문제 상황과 이를 해결한 과정을 상세히 기록하고, 향후 동일한 문제가 발생할 경우 신속하게 해결할 수 있도록 트러블슈팅을 체계적으로 정리하려고 합니다.과정은 크게 문제 상황 발생 / 원인 추론 / 해결 방안 / 결과 확인 순으로 트러블 슈팅을 정리문제 상황 발생벅스 '벅스차트'에서 상위 30개의 이미지를 받아와서 저장하기import requestsfrom bs4 import BeautifulSoupfrom datetime import datetimefrom urllib.request import urlretrieveclass NewsEntry: def __init__(self, title, img_path): self.title = title ..

크롤링 도구에 대해 알아보자.

크롤링 도구는 많고 여기서 뭐가 쉽게 접근할 수 있을까.   오늘은 크롤링 도구에 대해 공부해보자. 실제 프로젝트에서 어떤 도구를 선택해야 할지, 각 도구의 특징과 장단점에 대해 알아보자.오늘의 배움크롤링 도구 및 특징Beautiful Soup과 Selenium 차이점 크롤링 도구파이썬 크롤링 라이브러리 종류1. Requests특징 : HTTP 요청을 간단히 처리할 수 있는 라이브러리용도 :웹 페이지의 HTML 소스를 가져오기 위해 사용REST API 호출장점 :간단하고 빠른 HTTP 요청 지원쿠키, 세션, 인증 등 지원단점 :동적 콘텐츠(JavaScript로 렌더링되는 데이터)는 처리 불가예제 코드import requestsurl = 'https://example.com'response = reques..

[SK캠프] 9일차 TIL 241226 (python 패키지 / 파일 IO)

Intro프로젝트 진행 중 마주한 문제 상황과 이를 해결한 과정을 상세히 기록하고, 향후 동일한 문제가 발생할 경우 신속하게 해결할 수 있도록 트러블슈팅을 체계적으로 정리하려고 합니다.과정은 크게 문제 상황 발생 / 원인 추론 / 해결 방안 / 결과 확인 순으로 트러블 슈팅을 정리문제 상황 발생Q) 특수 예외 상황과 오류 변수 사용다람쥐는 숫자 두 개를 입력받아 나누기를 수행하려고 합니다.​사용자로부터 두 숫자를 입력받아 나누기를 수행하세요.첫 번째 숫자가 0으로 나누기를 시도하면 "0으로 나눌 수 없습니다."를 출력하세요.입력값이 숫자가 아니면 "숫자를 입력해야 합니다."를 출력하세요.오류 메시지를 출력할 때 발생한 오류 내용을 함께 출력하세요.try: num1 = int(input('첫 번째 숫..

728x90