방법 38

Pandas - 고객 구매 데이터 데이터 전처리 연습

목차 데이터셋 설명 분석 코드 01. 데이터셋 설명 데이터는 캐글에서 제공하는 고객 구매 데이터를 사용했다. 링크는 아래와 같다. https://www.kaggle.com/vjchoudhary7/customer-segmentation-tutorial-in-python Mall Customer Segmentation Data Market Basket Analysis www.kaggle.com 해당 데이터의 경우, 고객이 특정 몰에서 구매한 데이터 200 raw로 구성돼 있다. 각 칼럼값은 총 4개이며, 컬럼은 아래와 같다. CustomerID (고객ID) Age (나이) Annual Income (k$) (연간 수입) Spending Score (1-100) (지출 지수) 02. 분석 코드 2-1. dat..

Git Push & Clone 오류 원인 - repository 인증 정책 변경

Git의 보안 이슈 때문에, 레포지토리 접근 시 인증 방법이 8월 13일 이후로 변경됐다. 어쩐지 원래였으면 username과 password만 쓰면 잘 pull & clone 되던 것들이 실행되지 않았다. 아래처럼 에러가 떠서, 안내해준 github docs로 접근해보았다. 공식 레퍼런스 링크 Set up Git - GitHub Docs To use Git on the command line, you'll need to download, install, and configure Git on your computer. You can also install GitHub CLI to use GitHub from the command line. For more information on GitHub CLI, ..

AWS EC2(Ubuntu) Url port 번호 없이 접속하도록 설정하는 방법

우리는 EC2 등 서버에 웹을 올렸을 때, 해당 링크에 접속하기 위해서는 퍼블릭 ip 주소 뒤에 반드시 port 번호를 설정해야 한다. 이는 누구에게는 번거로움이 될 수 있다. 따라서 이를 해결하는 방법에 대해 조금 더 자세히 설명해보려 한다. (이전에 관련 내용을 간략히 설명한 적 있는데, 궁금하면 아래 포스팅을 참고하면 된다.) Django 웹사이트에 AWS RDS (PostgreSQL) 연결 방법 현재 프로젝트를 진행하며 데이터베이스를 PostgreSQL로 지정하기로 결정했다. RDB를 선택한 이유는 아래와 같다. 사용자 데이터 등 데이터 간 관계 정의 open api data의 경우, 고정된 스키마로 스키마 eng-sohee.tistory.com 1. iptables 설정 초기화 우선 이전에 설정..

AWS EC2 nohup - 프로젝트 파일 삭제 후 종료하는 방법

AWS EC2 UBUNTU 서버에서, 배포하고자 clone 한 폴더를 삭제하면 자연스럽게 nohub으로 띄워놓은 파일도 삭제되니까 nohup 설정한 파일의 연결이 끊길 줄 알았는데, 그렇지 않았다... 그리고 파일이 삭제돼서 원래 내가 알고 있던 스크립트 파일명 종료 명령을 실행할 수 없었다. ❓❗ 여기서 잠깐! 파일 명으로 nohup 삭제 명령 ps -ef | grep -i 'file.py runserver' 여기서 file.py는 임시 명칭이므로, 본인의 파일명으로 바꿔주면 된다. 따라서 이때는 어떻게 해결할 지 찾아봤는데, pid 번호로 종료해주면 쉽게 해결된다. 방법은 아래와 같다. 1. pid 번호 찾기 ps -ef 2-1. pid 번호로 nohup 삭제 - pid번호 식별 후 삭제 kill -..

카테고리 없음 2021.08.02

AWS EC2 & RDS '인스턴스를 찾을 수 없음' 오류 해결

AWS에 EC2 서버 배포하고 잘 Postgresql 생성도 했는데 왜 인스턴스를 찾을 수 없다고 나오는지 답답했었다 ... 구글링을 해보니, 다른 사람이 내 인스턴스를 사용했을 수도 있다(?)고 하길래 순간 머리로 망치를 한 대 맞은 것 같았지만, 해결 방법은 생각보다 간단했다. https://aws.amazon.com/ko/premiumsupport/knowledge-center/find-ec2-instance/ 특정 EC2 인스턴스 찾기 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 시작했는데 Amazon EC2 콘솔에서 해당 인스턴스를 확인할 수 없습니다. 이 인스턴스는 어디에 있습니까? 다음은 콘솔에서 EC2 인스턴스를 확인하지 못하 aws.amazon.co..

카테고리 없음 2021.08.01

데이터베이스에 csv 파일 업로드 시 에러(value too long for type character) 해결

에러 살펴보기 ERROR: value too long for type character varying(76) Call getNextException to see other errors in the batch. 프로젝트 도중 csv 파일을 데이터베이스에 넣어야 했는데, 이때 위와 같은 오류로 데이터가 들어가지 않는다는 이야기를 듣고, 함께 해결에 나섰다! 처음 에러를 봤을 때는, 초기 설정한 스키마의 글자 수 등의 제한에 걸려서 저장이 안되는 줄 알았는데, 전반적으로 TRUNCATE 가 필요한 상황이라는 것을 알았다. 여기서 잠깐! TRUNCATE란? 데이터 테이블은 그대로 남겨놓되, 그 안에 알맹이(인덱스, 스키마, 데이터 등)들을 모두 초기화하는 sql 명령 중 하나다. 그렇다면, TRUNCATE 설정..

django Server에 image 업로드하는 기능 구현 + 이미지 스토리지를 AWS S3로 변경하려는 이유

현재 사진을 업로드하는 기능이 필요해 서버 내 media 폴더를 만들어, 업로드한 이미지가 media에 들어갈 수 있도록 설계했다. 사실 방법 자체는 어렵지 않다. 왜냐하면 django에는 이미 관련 라이브러리 (static 등)가 잘 되어있기 때문이다. 여기서, 필요하면 pillow 등을 추가 설치하면 되므로 프로세스 자체는 복잡하지 않다. 하지만 나는 구글링을 하면서, 중간중간 이해가 되지 않는 부분이 있었기 때문에 (어디로 어떻게 저장되는지 혼란스러웠음) 버벅거렸던 것은 사실이다 ㅜㅜ 그래도 문제를 해결했으니 다행이라고 생각한다! 이제는 유연하게 기능을 구현할 수 있을 것 같다 ㅎㅎ 1. 메인의 settings.py 설정하기 import os # 사진 저장 공간 설정 # media로 접근하면 med..

Django 웹사이트에 AWS RDS (PostgreSQL) 연결 방법

현재 프로젝트를 진행하며 데이터베이스를 PostgreSQL로 지정하기로 결정했다. RDB를 선택한 이유는 아래와 같다. 사용자 데이터 등 데이터 간 관계 정의 open api data의 경우, 고정된 스키마로 스키마 중복 차지 공간 없앰 그런데, RDB에서도 다양한 DB의 종류가 있다. 그 중에서도 가장 대표적인 건 MySQL과 MS SQL 그리고 PostgreSQL이 있다. PstgreSQL을 선택한 이유 PostgreSQL MySQL 빠르게 데이터를 삽입 삭제할 때 용이 고정된 데이터의 처리에 용이 데이터베이스 백업 기능으로 데이터 소실 시 해결 가능 데이터 소실 우려 오픈 데이터 소스 오픈 데이터 소스 다양한 join 방법이 존재 join 등 데이터 집계의 한계 데이터 삭제 및 삽입 프로세스라 업데..

Window에 Cron Tab 설치 방법 + Cron 이란?

나는 최근 진행한 프로젝트 때문에 Cron을 종종 이용했다. 물론 Airflow 등을 쓰면 더 손쉽게 스케줄러 활용이 가능하지만, 파이썬 파일 하나를 간단하게 돌리기로는 (내가 아는 지식 범위 내에서) Cron이 무난하고 이용하기 수월하다고 판단했기 때문이다. 목차 Cron 이란? nnSoft 접속 및 프로그램 설치하기 워드패드로 cron 설정하기 Cron 주기 1. Cron이란? 유닉스 계열의 운영체제에서 사용되는 잡 스케줄러다. 일반적으로 서버 등에서 쓰이는 유닉스 계열의 운영체제가 있는데, 이 유닉스 계열의 운영체제는 cron이라는 잡스케줄러를 가자고 있다. 하지만 윈도우에서도 윈도우용 cron을 사용할 수 있다. 2. nnSoft 접속 및 프로그램 설치하기 http://www.nncron.ru n..

02. Django 에러 : ValueError: Field 'found_count' expected a number but got ''.

Flask 앱의 편리함 때문에, 초기 개발은 Flask 로 수행했지만 (사실 이때까지 배운게 Flask뿐이었음) Django가 더 유동적으로 개발할 수 있다는 장점이 있어, 프로젝트 개선작업은 Django로 하기로 했다. 즉... 그냥 모두 뜯어 고쳐야 한다. 원래도, 초기 개발당시에는, 다소 모르는 내용이 있더라도 완전히 이해하지 않고 프로젝트를 구동시키는 데에 목적이 컸으므로, 완벽하게 이해하며 프로젝트를 수행할 수 있도록 새로 프로젝트를 시작하는 것도 나쁘지 않을 것 같았다. 따라서 나는 Pycharm 을 이용해 Django 프로젝트를 개설했다. 그런데 프로젝트를 한참 수행하던 중, 위와 같은 문제를 맞닥뜨렸다. ❓❗ 에러 살펴보기 ValueError: Field 'found_count' expec..