지극히 개인적인 공부 노트 85

[Git] 깃허브로 협업하기

깃과 깃허브를 통해 문서를 관리하다 보면 기존에 쓰던 개인 노트북이 아닌 다른 개인 컴퓨터 또는 회사 컴퓨터와 같이 다른 컴퓨터를 통해서 원격 저장소를 공유해야 할 상황이 생깁니다. 또한, 다른 협업자들과 함께 프로젝트를 진행하는 경우에도 하나의 원격 저장소를 다 같이 공유하고, 필요할 때 수정해서 다시 올리는 경우가 발생하기도 합니다. 이처럼 원격 저장소를 협업하기 위한 방법은 다음에 나오는 명령어를 쓸 줄 안다면 더 원활하고 편리하게 협업할 수 있습니다. 1. 원격 저장소 복제하기 원격 저장소는 기존에 연결된 지역 저장소 외에 다른 지역 저장소에서 사용하려면 원격 저장소에 담긴 내용 전체를 지역 저장소로 가져와야 합니다. 이를 '복제', '클론(clone)' 또는 '클로닝(cloning)'이라고도 표..

[Python] 매우 기초적인 Python 크롤링하는 법(feat. 간단한 DB 설명)

1. 크롤링이란? '크롤링'은 정의하자면 검색 엔진(네이버, 구글 등) 로봇을 통해 데이터를 수집하는 방법을 의미합니다. 흔히 개인이 포털 사이트에서 검색을 통해 확인할 수 있는 정보를 퍼오는 행위인 '스크랩핑' 또한 크롤링이라고 부르기도 합니다. 2. 크롤링 하는 법 코딩을 통해 크롤링을 하기 위해선 2가지 핵심 요소가 있습니다. 첫 번째는 원하는 페이지의 HTML을 요청하는 것, 두 번째는 요청을 통해 가져온 HTML 중 필요한 데이터만을 잘 골라내는 것입니다. 이를 파이썬에서 성공적으로 진행하기 위해선 먼저 임포트(import) 해야 하는 라이브러리가 있습니다. 임포트 할 라이브러리는 requests, beautifulsoup가 있으며 다음과 같이 입력하면 임포트 할 수 있습니다. import re..

[Git] 깃허브 이용하기

깃허브란 깃의 원격 저장소를 제공하는 서비스로, 기존에 깃배시(git bash) 등을 통해 파일을 저장하고 관리하던 컴퓨터(지역 저장소)의 '백업' 역할을 합니다. 기존에 이용하던 컴퓨터가 손상되거나, 깃을 이용하던 파일 혹은 디렉터리가 삭제되었을 경우 등을 대비해 깃허브와 같은 원격 저장소를 일종의 백업 공간으로 이용할 수 있습니다. 또, 인터넷으로 접속 가능하기 때문에 깃허브에 업로드 된 파일을 접근이 허용된 협업자와 함께 수정하는 재업로드 또는 커밋(버전 추가)하는 것이 가능합니다. 이런 부분에선 프로젝트 '협업'도 가능하게 합니다. 이외에도 자신의 개발 이력을 남기는 것, 다른 개발자의 소스를 살펴보는 것 등이 가능하고, 오픈 소스에 참여할 수도 있습니다. 대표적으로 부트스트랩(bootstrap)..

[Web] jQuery(제이쿼리) 임포트 하는 법과 Ajax(에이잭스) 사용하기

1. jQuery jQuery는 HTML 사용자가 HTML을 조금 더 잘 제어하기 위한 방법 중 하나로, 자바스크립트(Javascript)를 더 편하게 사용할 수 있게 하는 자바스크립트 함수의 모음(라이브러리)입니다. jQuery를 통해 다음과 같이 기존의 긴 자바스크립트 명령을 직관적인 함수로 사용할 수 있습니다. document.getElementById('element').style.display = "none"; 위 명령은 순수하게 자바스크립트 언어로 작성한 명령이고, 해당 id(예시에서는 'element')의 태그를 숨긴다는 명령입니다. $('#element').hide() 맨 위의 명령과 같은 명령이며, 보다 직관적이고 편리한(짧은) 것을 알 수 있습니다. 또, 알 수 있는 것은 자바스크립트 ..

[Web] 웹 개발의 0단계: HTML, CSS, JS(Javascript) 간단 요약 + 유용한 CSS 사이트

웹 서비스 개발 및 배포를 위해선 프론트엔드(front-end)와 백엔드(back-end)가 구성이 되어야 하고, 그중 시각적이고 직관적인 부분을 담당하는 프론트엔드는 우리 눈에 보이는 웹 페이지 자체를 만드는 영역입니다. 그리고 웹 페이지를 제작하기 위해선 HTML, CSS, JS(Javascript, 자바스크립트)라는 3가지 구성요소를 이해하고, 사용할 줄 알아야 합니다. 이 글에서는 강의(스파르타코딩클럽)와 함께 제가 이해한 내용을 바탕으로 정리한 내용입니다. 우선 이 글을 요약하면 다음과 같습니다. 웹 페이지 제작에는 HTML, CSS, JS, 이렇게 3가지 도구 및 언어를 알아야 하며, 이 3가지 요소는 사람으로 비유했을 때 다음과 같은 역할을 합니다. 1. HTML: 사람 신체의 뼈, 신체 구..

[Git] Git 명령어 모음(feat. 간단한 리눅스 명령어)

'깃(Git)'이란 컴퓨터의 많은 문서(특히, 많은 버전으로 작성되는 문서)를 보다 편리하고 직관적으로 관리할 수 있게 해주는 프로그램입니다. 깃의 핵심 기능은 크게 3가지 기능을 제공하며, '버전 관리', '백업', '협업'으로 정리할 수 있습니다. 이 글에서 말하는 '깃'은 흔히 아는 웹 서비스로 제공되는 '깃 허브'가 아닌, '커맨드 라인 인터페이스(Command Line Interface, CLI)'라는 터미널 창에 직접 명령어 입력을 통해 사용하는 방식으로 이용이 가능한 '깃 배시(Git Bash)'를 의미합니다. 이 깃 배시는 기본적인 리눅스 명령과 깃 명령을 알아야 하기 때문에 비교적 어렵지만, 익숙해지면 훨씬 빠르게 깃을 다룰 수 있습니다. 그리고 주로 사용하는 리눅스와 깃의 명령어를 필요..

[Python] 정규표현식

정규표현식이란, 특정한 문자의 규칙을 찾고 가공하는 방법을 의미합니다. 파이썬뿐만 아니라 C, C++, 자바 등에서 표준 라이브러리로 제공하고 있다는 점에서 굉장히 널리 사용되는 표현법이기도 합니다. 1. 모듈 정규표현식 모듈의 이름은 're'입니다. 정규표현식의 메서드를 사용하기 전에 우선 정규표현식 모듈을 임포트해야 합니다. import re 2. 메서드 1) match - 해당 문자열의 가장 처음부터 원하는 패턴의 문자열을 찾는 명령입니다. 문자열을 찾은 후, group() 함수를 함께 사용해야 패턴에 해당되는 문자열이 반환됩니다. - 사용법 re.match(패턴, 패턴을 찾을 문자열) - 단, 가장 처음부터 원하는 패턴을 찾기 때문에 패턴이 문자열 중간에 있다면 찾지 못하고 오류가 발생합니다. ※..

[인공지능] 머신러닝 '비지도 학습' 알고리즘 정리

현재 공부를 시작한 단계에 불과하며, 차근차근 공부한 머신러닝 알고리즘의 방식과 특징 등을 정리해나가는 게시글이다. 기술하는 내용은 모두 Python 기반이다. - 지도 학습 알고리즘과 다르게 데이터 중에서 타깃이 없을 때 사용하는 머신러닝 알고리즘이다. 1. k-평균(k-Means) 1) 무작위로 k개의 클러스터(군집) 중심을 선택하고, 점차 가장 가까운 샘플의 중심으로 이동하는 비교적 간단한 알고리즘 2) 평균값이 클러스터의 중심에 위치하기 때문에 '클러스터 중심' 또는 '센트로이드'라고 부르기도 한다. 3) 군집된 결과는 KMeans 클래스의 labels_ 속성, 클러스터 중심은 cluster_centers_ 속성, 알고리즘이 반..

[인공지능] 사이킷런(Scikit-learn) 패키지

k-최근접 이웃, 선형 회귀, 릿지, 라쏘, 다항 회귀, 로지스틱 회귀, 확률적 경사 하강법, 결정 트리 등의 알고리즘을 갖고 있는 대표적인 머신러닝 패키지입니다. 데이터를 이 패키지의 입력 데이터로 활용하기 위해선 2차원 리스트(배열 포함)로 입력 또는 변환해야 합니다. 또, 사이킷런을 통해 필요한 머신러닝 알고리즘을 임포트, 머신러닝 알고리즘의 모델 생성, 모델 평가 등의 순서로 이용합니다. 1. 모듈 1) model_selection: 모델의 데이터를 구성, 변환해주는 모듈 (1) train_test_split(): 훈련 세트와 테스트 세트로 함수 자체에서 랜덤하게 분리하며, 입력 데이터와 정답 데이터를 입력으로 받고, 이를 다음과 같이 각 변수에 자동으로 저장합니다. from sklearn.mod..

[Python] 맷플롯립(matplotlib)의 유용한 기능 정리

※ 해당 게시글은 파이썬과 인공지능을 공부하면서 사용한 기능을 정리한 내용입니다. 과학계산용 그래프를 그리는 대표적인 패키지로 맷플롯립(matplotlib)이 있습니다. matplotlib 패키지는 아래와 같이 임포트(import)하며, 관용적으로 'plt'라는 문자열로 줄여서 임포트합니다. import matplotlib.pyplot as plt 추가로 한글을 사용하기 위해선 원하는 한글 글씨체 파일(.ttf)을 다운 받은 후 다음과 같이 임포트하면 된다. import matplotlib.font_manager as fm font = fm.FontProperties(fname='./NanumBarunGothic.ttf') # 글씨체 파일을 파이썬 파일(.py)과 같은 디렉터리에 저장한 경우 matplo..