본문 바로가기

[AI+X 역량 강화] 인공지능/1) 기본기: 파이썬, 데이터 수집14

[파이썬]#13 OpenAPI 크롤링 실습 // 서울 열린데이터 광장, 표와 그래프 만들기 오늘은 기본기 단계의 마지막 수업으로 OpenAPI를 사용하는 방법을 알아보자. 서울 열린데이터 광장은 회원가입만 하면 무료로 다양한 데이터를 활용할 수 있는 오픈API를 제공한다. 이전에 배운 크롤링 방법들을 사용하면 딱히 어렵지 않다. '서울시 병의원 위치 정보'와 '서울시 코로나19 백신 예방접종 현황' 두가지에 대한 데이터를 코랩으로 표와 그래프로 만들어 볼 것이다. 연구, 관리, 서비스 제공 등 서울시 시정활동 과정에서 수집된 다양한 데이터 존재 환경, 교통, 인구 등의 데이터, 보건 등 다양한 분야 데이터 존재 쉽게 검색이 가능하고 자유롭게 사용 가능하며, 재사용 가능 데이터에 대한 라이선스 정보를 함께 게시하고 있어 데이터 사용에 문제가 되지 않도록 함. 개인별로 Key를 발급 받아야함 저작.. 2023. 9. 2.
[파이썬]#12 동적 크롤링 실습 // 구독한 네이버 뉴스 크롤링 오늘은 네이버 뉴스로 동적 크롤링 실습을 진행했다. 확실히 정적 크롤링보다 실행 속도가 느리고, 뭔가 더 복잡하다... HTML을 아예 모르면 좀 헷갈릴 것 같다. (다행히 나는 인터넷활용 수업으로 HTML과 JavaScript를 배웠음!) 근데 자꾸하다보면 그냥 비슷한 반복 작업이라는 것을 알 수 있긴 하다! 동적 크롤링은 처음해보는 거라, 내가 구독한 신문사를 바꿔가며 몇번이나 다시 해봤다. 코드는 같은데 매번 다른 결과가 나오는 것이 신기하기도?! 단점은 뭔가 오류가 있으면 거의 처음부터 다시 실행해야한다는거... 동적 크롤링은 url만으로는 들어갈 수 없는 페이지에서 데이터를 가져올 때 사용된다. (들어가지더라도 url의 변화가 없는데도, 실시간으로 내용이 계속해서 추가되거나 수정되는 경우) 동적.. 2023. 9. 1.
[파이썬]#11 정적 크롤링 실습 // 네이버 뉴스, 서울특별시 코로나19 크롤링 오늘은 requests 모듈, BeautifulSoup 라이브러리, pandas 라이브러리를 이용하여 코랩에서 크롤링을 진행해볼 것이다. 우선, 네이버 웹사이트로 간단한 방법을 알아보자. 첫번째 실습은 서울특별시 코로나19 홈페이지에서 정보를 가져와, 표로 만들고, 엑셀로 저장하는 방법까지 실습해보자. 두번째 실습으로는 네이버 뉴스에서 어떤 키워드를 입력하면 기사의 제목들을 표로 불러올 것이다. [Part 1] 정적 웹크롤링 방법 예제 실습 1. (방법1) Requests 모듈 html 문서를 가져올때 사용하는 패키지 사용자 친화적인 문법을 사용하여 다루기 쉬우면서 안정성이 뛰어남 파이썬 기본 라이브러리에 포함된 urllib 패키지보다 자주 사용방법 · Colab에서는 이미 설치되어 있는 상태이기 때문에.. 2023. 8. 31.
#10 웹크롤링, Open API란? 다음 시간에 웹크롤링과 OpenAPI 사용 실습을 해볼 예정이다. 크롤링은 서울특별시 코로나 19 정보와 코로나 관련 네이버 뉴스에 대해, OpenAPI는 정부 공공데이터 포털과 서울 열린 데이터 광장에 대해 진행할 것이다. 우선 실습을 해보기 전에 무엇인지부터 배웠다. [Part 1] 웹크롤링 1. 웹이란? : World Wide Web(WWW)의 줄임말 참고로, 인터넷은 컴퓨터 네트워크 통신망을 의미하고, 웹은 그 인터넷상에서 동작하는 하나의 서비스이다. 1) 웹 브라우저 : 웹을 보기 편하게 해주는 소프트웨어 ex) 엣지, 크롬, 사파리 2) HTTP(Hypter Text Trasfer Protocol) : 클라이언트와 서버 사이에서 정보를 주고받기(문서 전송) 위한 규약 여기서 클라이언트란 브라우.. 2023. 8. 30.
#9 데이터 수집 이론 및 활용 // 사례, 데이터3법, 비식별화 오늘부터는 크롤링에 대해서 배운다. 저번 학기에 캡스톤디자인 전공 수업에서 프로젝트로 대학 신문기사를 크롤링해서 전송해주는 시스템을 만들었었다. 그래서 약간의 크롤링 경험이 있다고 볼 수 있지만, 정식으로 배운 적은 없고 그냥 여기저기에서 혼자 공부했었다. 그때는 야매(?)로 한거였으니까 이제 기초부터 차근차근 배워야지! 일단 실제 크롤링을 어떻게 하는지 배우기 전에, 데이터에 대한 개념부터 알아보자. [Part 1] 데이터 수집 이론 우선 데이터란 무엇일까? ▶ 데이터 (Data) · 모든 분석 혹은 활용가능한 디지털화된 자료이자 정보(신호, 기호, 문자, 숫자 등) · 의미 있는 정보를 모든 값으로, 사람이나 기계가 생성하고 처리하는 형태로 표시된 것 데이터에는 세가지 종류가 있는데, 1. 정형 데이.. 2023. 8. 27.
#8 파이썬 기초 6 // Pandas 라이브러리 드디어 파이썬 기초의 마지막 수업이다. Pandas는 처음 배우는거라 새로웠다. 몇번 연습해 봐야겠다! Pandas란? : R보다 학습이 쉽고, 성능이 좋은 데이터 분석용 라이브러리 (Numpy를 개량한 라이브러리) - Series : index, value - DataFrame : index, column, value 0. 라이브러리 불러오기 import pandas as pd import numpy as np 1.Series 동일한 데이터 타입의 값을 갖는다. 1-1. Series 선언 동일한 타입만 있을 경우 dtype이 나옴 데이터값이 각각 다른 타입 가능 참고) nunpy ndarray는 같은 타입만 가능 1-2. index 설정 꼭 딕셔너리 타입일 필요 없음 0부터 시작 1-3. Series .. 2023. 8. 27.
#7 파이썬 기초 5 // Numpy 라이브러리 오늘은 파이썬에서 데이터를 다룰 때, 가장 많이 쓰이는 라이브러리 중 하나인 Numpy에 대해 배웠다. Numpy란? : 선형대수/통계 연산을 위한 라이브러리 (데이터는 행렬로 표현) 행렬 데이터 생성, 수정, 계산 등을 빠르게 처리해주는 패키지 선형대수학을 빠르게 연산 스칼라, 벡터, 매트릭스 머신러닝/딥러닝 연구에 필수적으로 사용 데이터 분석에서는 pandas가 많이 활용 되지만, 알고리즘 활용에 있어서는 numpy 패키지는 필수 0. Numpy 불러오기 # 라이브러리 불러오기 import numpy as np # numpy를 np로 줄여서 쓰겠다 1. array 생성 2. ndarray 한가지 데이터 타입만으로 사용이 가능 다른데이터 타입이 혼용되어 사용할 수 없다. 3. 데이터 수정 4. arra.. 2023. 8. 27.
#6 파이썬 기초 4 // 클래스, 예외처리, 매직 메서드 나중에 인공지능할 때, 많이 쓰이기 때문에 연습을 해야하는 파트라고 하셨다. 파이썬 기초는 이미 아는 거인지라, 얼른 지나갔으면... 재미가 없다 ㅎㅎ 근데 맨날 C하다가 파이썬을 너무 오랜만에 해서 그런지, 오히려 너무 편해서 어색하다. 1. class : 클래스 변수와 함수를 묶어 놓은 개념 클래스 선언 변수와 함수를 클래스 안에서 선언 클래스를 객체로 만들어서 클래스 안에 선언된 변수와 함수를 사용 1-1. 기본 클래스 1-1.1. 클래스 선언 1-1.2. 객체지향 실제 세계를 코드에 반영해서 개발하는 방법 여러명의 개발자가 코드를 효율적으로 작성해서 프로젝트를 완성시키지 위한 방법 설계도 작성(class) -> 실제 물건(object) 사용자 정의 데이터 타입 1-1.3. 생성자 클래스의 인스턴스.. 2023. 8. 26.
#5 파이썬 기초 3 // 함수 문법 정리 오늘은 함수 문법에 대해 배웠다. 함수(Function)란? 특정 목적을 위해 작성한 코드(연산)의 집합 반복되는 코드를 묶음으로 효율적인 코드를 작성하도록 해주는 기능 독립적인 호출과 간결한 코드 작성을 위해 사용 : 코드 작성의 반복을 줄일 수 있음! 1. 선언, 호출, return, *args, **kwargs 1-1. 선언 def 함수명(param1, param2, ...): # 작성하고 싶은 코드 구문 # ... # ... return 결과값 1-2. 호출 def 함수명(파라미터): return 함수명(아규먼트) 파라미터 : 함수를 선언할때 호출하는 부분에서 보내주는 데이터를 받는 변수 아규먼트 : 함수를 호출할때 함수에 보내주는 데이터 함수를 선언할 때 파라미터의 타입과 개수를 맞추지 않으면 .. 2023. 8. 25.
#4 파이썬 기초 2 // 조건문, 반복문 오늘은 파이썬의 조건문과 반복문에 대해 배웠다. 이 것도 원래 알던거라 쉽게 따라가는 중! 1. 조건문 특정 조건에 따라서 코드를 실행하고자 할때 사용 if else elif 삼항연산자 1-1. if 조건에 따라서 코드를 실행시키고 시키고 싶을 떄 사용 condition이 True이면 code_1이 실행 if : 1-2. else condition이 False이면 code2가 실행된다if : else: 1-3. elif 조건이 여러개로 구분해서 코드를 실행할때 사용 condition_1이 True이면 code_1이 실행, condition_2가 True이면 code_2이 실행 condition_1과 condition_2가 둘다 False이면 code_3이 실행 if를 여러개 사용하게 되면 모든 코드들에서.. 2023. 8. 25.
#3 파이썬 기초 1 // 기본 문법(변수 선언, 식별자, 자료형, 형변환, 연산자 학습) 오늘은 코랩으로 파이썬의 기본 문법에 대해서 알아보았다. 이정도는 이미 알고 있는 내용이라 편하게 들었지만, 그래도 실습은 하나하나 다 따라하느라 오래 걸렸다! 1.주석(comment)과 출력(print) 주석 코드에 대한 설명이나 중간에 코드를 실행시키고 싶지 않을때 사용 출력(print 함수) 변수 또는 특정한 값들을 화면에 보여주게 하는 방법 코드 중간에 변수에 들어있는 값을 확인하고 싶을때 사용 2.변수 선언 RAM 저장공간에 값을 할당하는 행위 다중 할당 변수값 수정 3.식별자 변수, 함수, 클래스, 모듈 등의 이름을 식별자라고 한다. 식별자 규칙 소문자(a ~ z), 대문자(A ~ Z), 숫자, 언더스코어(_) 를 사용 맨 첫글자는 숫자 사용 불가 예약어(이미 python에서 문법적으로 정의되.. 2023. 8. 25.
#2 파이썬 개요 // 아나콘다와 코랩의 기본 사용 방법, 단축키, 오류 오늘은 아나콘다랑 코랩을 설치 및 기본 사용 동작을 익혔다. 근데 주피터 노트북은 결국 사용 안됨^^ 나중에 더 찾아봐야지... 해결 안된거 때문에, 몇시간 낭비하고 아 스트레스!! [Part 1] 파이썬 개요 1. 파이썬이란? 파이썬(Python): 프로그래밍과 데이터 분석, 머신러닝 또는 딥러닝 라이썬 라이브러리: Numpy, Pandas, NLTK, Scikit-learn High-level programming: 사람이 이해하기 쉬운 언어(파이썬 등) Low-level programming: 사람이 이해하기 어려운 언어(C 등) 컴파일러 언어: 모든 코드를 컴파일링 후에 컴퓨터에서 처리(실행 속도↑) 인터프리터 언어: 한 줄씩 코드를 컴파일링 하면서 컴퓨터에서 처리 (컴파일 속도↑) - 파이썬 2.. 2023. 8. 24.
#1 DX 산업 특강 // 인공지능을 활용한 디지털 전환 오늘은 첫 수업인데, DX와 인공지능에 대한 발전과정, 특징, 배경 등을 배우는 날이다. 내일부터는 파이썬의 기초부터 배운다고 한다![Part 1] 디지털 트랜스포메이션(DX)의 개요1. DX(Digital Trasformation)의 의미: "디지털 전환" 아날로그(오프라인) 시대에서 전부 디지털(온라인)로 전환 ※ 왜 DT가 아니고 DX일까? (어원) : 'X'는 과거에는 transfer(전송) / 현재는 cross(교차)의 의미를 가지고 있음 2. DX의 배경 및 요인· 기술의 발전: 인터넷의 등장, 모바일화 · 요구의 변화: 개인화 요구 · 환경의 변화: 시장 환경, 경제, 산업의 확대 · 정책의 변화: 법적, 제한 사항 · 사회적 변화: 자연 환경의 변화(식량난, 펜데믹) 3. DX의 발전디지털.. 2023. 8. 24.
#0 [스타트업 유니버시티: DX Challenge 교육] AI+X 역량 강화 트랙 OT 시작은 저번주였긴 한데, 처음 3주동안은 사전녹화된 온라인 강의를 자유롭게 수강하면 되는거라 이제 시작! 그리고 서비스기획 교육이 저번주 금요일에 끝났기 때문에 어차피 할 시간이 없었음...ㅎㅎ 근데 또 마침 교육이 시작되고 일주일 있다가, 늦게 합류하게 된거라 다행일지도! 개강하고부터는 온라인+대면 수업 및 프로젝트가 진행된다! 마침 다음 학기에 인공지능 전공 수업 듣는데, 조금이라도 도움이 되겠지...? 은 딥노이드, 오픈놀, 앙트비에서 협업하여 주최한거라고 한다. ▶ 교육 진행 순서: 1. DX 기본기 쌓기 (12H) : 전체 교육생에게 DX 직무역량의 기반이 되는 코딩/컴퓨팅사고 교육 2. DX 주특기 심화과정 (40H) : 선택한 분야의 전문 교육과 DX를 위한 활용 교육을 중심으로 S/W 비전.. 2023. 8. 24.