목록전체 글 (246)
without haste but without rest
파이썬처럼 편한 언어가 또 있을까 word = 'Hello World' print(word[::-1])
0. 개요 1. 분석 전에 데이터를 살펴보는 방법 - 박스 플롯 & 바이올린 플롯 - 페어 플롯 - lm 플롯 2. 차원축소 (피쳐 엔지니어링) - PCA - LDA 1. 데이터 불러오기 (1) 데이터 로드 import pandas as pd df = pd.read_csv("./data/iris.csv") # sanity check with Pandas print("shape of data in (rows, columns) is " + str(df.shape)) print(df.head()) df.describe().transpose() df.describe() 는 데이터 프레임에 대한 기술을 하라는 메소드 transpose()는 전치 함수 (2) 속성 확인(attributes check) print(d..
Reference - https://plas.tistory.com/129 진짜 이차원배열처럼 malloc하는 방법 이차원배열을 어떻게 malloc하느냐는 질문을 받았는데, 쉽지 않은 주제네요. 이차원 배열을 함수 매개변수로 넘기는 방법을 먼저 살펴보겠습니다. C 언어에서 2차원 배열은 포인터의 배열이고 각 포인터는 COLS칸.. plas.tistory.com #include #include int main(void) { /* 진짜 2차원 배열처럼 구현하기 1. 배열 선언 (5 x 3 배열) 2. 헤드 포인터 선언 3. 헤드 포인터 연결 4. 데이터 입력 5. 데이터 출력 */ int count = 0, i, j; int r = 5, c = 3; int len = sizeof(int*) * r + size..
C 로 그래프를 구현하는 중에 이해를 못하는 상황이 발생했다. 파이썬은 딕셔너리 구조를 이용해서 정말 쉽게 구현했고, 메모리 관리를 따로 안 해줘도 되니까 구조 자체에만 집중할 수 있었다. 온라인 강의를 보면서 굉장히 비효율적인 공부를 하다가, 혼자 그래프를 그려보고 직접 생각하면서 이를 코드로 구현하는 게 역시나 정석인 것 같다고 판단했다. 결론: 노트에 구조를 그려보고, 여기에 맞춰서 코드를 짜는 게 오래 남는다. 코드로 그래프를 구현한다는 것은 사람이 눈으로 인식하는 것과는 차이가 있다. 그래프 구조의 특징은 노드가 가지는 숫자가 노드의 개수보다 크지 않고, 중간에 비는 숫자가 없다. (만약 노드가 갖는 숫자가 1부터 순차적인 숫자가 아니라 중간에 훅 건너 뛰는 경우는 배열의 크기를 늘리는 방법을 ..
파이썬 개발환경 설정할 때마다 자꾸 까먹는 중요한 내용 아나콘다로 파이썬을 설치한 경우 pip가 기본적으로 설치되어 있다. 설치시 파이썬 환경변수 옵션을 체크하면 별도로 설정해주지 않아도 되므로 편리하다. 라이브러리 설치 python python -m pip install 패키지명 python3 pip3 install 패키지명 업그레이드 python python -m pip install --upgrade 패키지명 python3 python install --upgrade 패키지명 버전 확인 python pip list python3 pip3 list 혹은 import pandas as pd pd.__version__ 데이터 관련 학습을 하고자 하는 경우에는 아나콘다 설치하는 게 제일 편하다. 텐서플로우..
0. 깃 설치 Git - Downloads Downloads Mac OS X Windows Linux/Unix Older releases are available and the Git source repository is on GitHub. GUI Clients Git comes with built-in GUI tools (git-gui, gitk), but there are several third-party tools for users looking for a platform-specific git-scm.com 1. 리포지토리 생성하기 리포지토리 카테고리로 들어가서 초록색 New 버튼을 누른다. 리포지토리 이름을 설정해준다. (추후에 수정 가능) 디스크립션은 굳이 적어주지 않아도 된다. 우선 공개범..
0. 소멸자 소멸자(Destructor)는 객체를 제거할 때 사용하는 문법이다. 객체의 수명이 다하면 컴파일러가 자동으로 소멸자 함수를 호출한다. 소멸자를 정의할 수 있다. 1. 소멸자 예제 코드 클래스 이름과 동일하게 선언한다. ~Student() { } 부분이 소멸자를 정의하는 부분이다. (정의하지 않는 경우 디폴트로 아무것도 출력되지 않는다.) #include #include using namespace std; class Student { private: string name; int age; int absent; public: Student(string name, int age) : name(name), age(age), absent(0) {} ~Student() { cout
0. 생성자 C++ 에서는 생성자(Constructor)를 이용해서 객체를 생성과 동시에 멤머 변수를 초기화할 수 있다. (자바에서 쓰던 그 생성자가 맞다.) 1. 생성자 예제 코드 #include #include using namespace std; class Student { private: string name; int age; int absent; public: Student(string name, int age) { this->name = name; this->age = 20; this->absent = 0;// 결석횟수는 인스턴스 생성시 0부터 시작 } void show() { cout