본문 바로가기

분류 전체보기152

[Multivariate Analysis] 주성분분석 실행 with R, Python 전체 코드 install.packages("HSAUR2") library(HSAUR2) data(heptathlon) head(heptathlon) heptathlon summary(heptathlon) write.csv(heptathlon, file="/Users/DataAnalytics/MultivariateAnalysis/mva/heptathlon.csv") # R 2.3 heptathlon$hurdles = max(heptathlon$hurdles) - heptathlon$hurdles heptathlon$run200m = max(heptathlon$run200m) - heptathlon$run200m heptathlon$run800m = max(heptathlon$run800m) - heptat.. 2022. 3. 21.
[Multivariate Analysis] Principal Component Analysis(PCA) 주성분분석 1. 주성분분석이란? 서로 관련이 있는(즉, 상관계수가 0이 아닌) 변수들의 선형결합을 이용하여 새로운 변수를 만드는 과정이다. 즉, 원래 변수들이 가지고 있는 정보의 일정수준을 확보하도록 소수의 새로운 변수들을 만드는 방법으로 새로 만들어진 변수들이 서로 직교인 특성이 있다 분석 가장 강한 영향력을 가지고 있는 주된 변수의 갯수를 추려내는 것이다. 좀 전문적인 말로 쓴다면 서로 관련있는 변수들이 전체적으로 가지고 있는 정보들을 최대한 확보하는 적은 수의 새로운 주성분 변수를 생성하는 방법이다. 1) 주성분(principal component)이란? 다변량 자료가 가지고 있는 총변이의 주요부분을 함유하고 있는 성분을 의미한다. 2) 변이(variation)의 크기란? - 정보의 크기를 나타내는 개념이다 .. 2022. 3. 18.
[Mulivariate Analysis] eigenvalue(고유값)과 eigenvector(고유벡터) 정방행렬 $A$에 대하여 $Ax = λx$, $Av=\lambda v$ (상수 λ) 가 성립하는 0이 아닌 벡터 x가 존재할 때 상수 λ 를 행렬 $A$의 고유값 (eigenvalue), x 를 이에 대응하는 고유벡터 (eigenvector) 라고 한다. 고유값과 고유벡터를 벡터곱 해주면 방향은 그대로 있고 배율만 바뀐다. 이 성질이 주성분 분석 할 때 차원축소에 중요한 키가 된다. $Av$ : 열벡터 v에 선형 변환 A 한 결과 Ax = λx를 만족하는 모든 상수 λ와 0이 아닌 모든 벡터 x (1개 ~ 최대 n 개)를 찾아야 한다. 이 글에서는 정방행렬로 된 고유값과 고유벡터 구해봤다 여기서 더 나아가면 정방행렬이 아닌 행렬에도 적용할 수 있는 SVD 특이값 분해를 할 수 있다. 2022. 3. 18.
[Python] colab에서 python으로 url 날려서 파일 다운로드 크롤링 하기 보호되어 있는 글 입니다. 2022. 3. 17.
[Python] 코랩과 파이썬을 이용해 구글 드라이브에 폴더 만들고 파일 쌓고 불러오기 1탄 코랩과 파이썬을 이용해 구글 드라이브에 폴더 만들고 파일 쌓고 불러오기 2탄 법원 사이트에서 공개된 전국법원 주요판결 판결문(글제목, 작성법원, 작성일, 파일다운url) 크롤링 해오기 (대법원 관계자분의 필요에 의해 허락받고 크롤링 한 것임을 알립니다. 허가받지 않거나 허가가 필요 없더라도 서버에 부하를 주거나 크롤링은 법에 저촉될 수 있으니 주의하시기 바랍니다.) 3탄 SQLite를 이용해서 크롤링 해온 내용 DB화 하기 (create, drop | insert, delete) 4탄 colab에서 python으로 url 날려서 파일 다운로드 크롤링 하기 코랩에서 크롤링을 하기 앞서서 폴더 만드는 작업을 진행한다. 필요한 라이브러리를 import 해준다. 여기서! 크롤링 하는 과정에서 다양한 라이브.. 2022. 3. 17.
[sqlite3] database disk image is malformed 에러 뜨는 경우 sqlite3에서 크롤링한 객체를 인서트 하려고 하는데 아래와 같은 에러가 떴다. database disk image is malformed 생성된 DB 파일은 백업해둔 후(확장자가 .db 인 sql 파일!) drop으로 테이블을 삭제해 준 후 drop table ~ 기존에 작성해놨던 create문으로 새로 생성해준 후 똑같이 돌려줬다. create table ~ 간단한 조치로 아주 잘 돌아가는 것을 확인할 수 있다. 현재는 디비 양이 많지 않고 적재해놨던 양도 크지 않아서 싹 밀고 다시 했는데 적재돼있었던 디비 양이 많아서 처음부터 하기 부담스럽다면 다른 sql로 내용을 덤프해놓고 새로운 디비를 만들어서 다시 복사해오는 방법도 있다. 2022. 3. 17.
[Python] 크롤링 돌리면서 생긴 에러 법원 사이트 크롤링해서 페이지마다 글 리스트랑 번호 가져오고 글 리스트+번호로 상세페이지 들어가서 제목, 작성자, 등록일, 파일다운로드url 추출해가지고 그 내용 디비로 만들고 파일 url로 파일 다운로드받아서 구글드라이브에 저장하는거까지 만들었다 데이터를 첫 페이지 10개로 제한해서 처음부터 끝까지 프로세스를 만든 후 성공적으로 돌아가서 전체 2000개 돌리기 전에 테스트로 50개를 돌려봤다. 50개에서도 한번에 잘 돌아가서 오예 하고 전체를 돌렸는데 에러가 튀어나왔다. 당연히 모든 글에 첨부파일이 있을거라고 생각했는데 아니 첨부파일이 없는 글이 있을 거라고 상상도 못해봤는데 첨부파일 없는 것이 에러를 내뱉었다. 바로 예외처리를 해줬다. prefilepath=prefilepath.find_all('a'.. 2022. 3. 16.
[Python] colab에서 폴더 생성하고 sqlite3로 테이블 생성하기 with logging 코랩은 기존 프레임워크에서 실행문을 위에 쓰고 함수를 아래 쓰는 방식과 다르게 함수가 위에 있고 실행문이 아래에 있어야 한다. 먼저 필요한 라이브러리들을 import 한다. 로깅은 소프트웨어를 실행할 때 발생하는 이벤트를 기록하고 추적하기 위해 사용한다. 로그를 찍어줄 로거를 생성하고 config 설정에서 로그 중요도 수준(level)을 설정할 수 있다. 보통은 level=DEBUG를 사용하지만 여기서는 print 찍듯이 로그만 보고 모든 실행 현황을 파악할 수 있도록 info 수준까지 찍어주려고 한다. 코랩에서는 지나간 로그를 보기가 까다로워서 파일로 저장해준 후 덮어쓰기인 filemode='a'로 해준다. 자세한 설정은 아래 설명을 참고한다. level 설명 DEBUG 상세한 정보. 보통 문제를 진단.. 2022. 3. 15.
[Computer Security] 컴퓨터 보안이란? 1. 정보보호의 개념 정보를 여러 가지 위협으로부터 보호하기 위한 정책 및 기법이다. - 정보의 상태 : 저장, 전달 - 위협의 종류 : 허락되지 않은 접근, 수정, 훼손, 유출 등 2. 컴퓨터보안의 개념 컴퓨터 보안은 정보보호에 포함된다. 컴퓨터 환경이 관여된 모든 상황에 대한 정보보호다. 컴퓨팅 환경에 저장되거나 처리되는 정보를 다양한 위협으로부터 보호하기 위한 정책 및 기법이다. 3. 정보보호의 목포 1) 기밀성(Confidentiality) 기밀성은 허가되지 않은 사람이 데이터와 개체에 무단으로 접근할 수 없도록 보호하는 것을 의미한다. - 정보에 접근을 못하게 만든다 - 정보에 접근하더라도 무의미한 내용만 보이게 한다. ex) 비밀번호 2) 무결성(Integrity) 데이터를 신뢰할 수 있도록 .. 2022. 3. 15.
728x90
반응형
LIST