• Programming,  Python

    [Python] Xlwings 사용법

    Introduction Python에서 엑셀을 쉽게 다룰 수 있도록 돕는 다양한 라이브러리가 존재하는데, 그 중에 하나인 xlwings를 소개하고자 한다.(참고로 Jupyter Notebook에서 진행을 했습니다.) Xlwings는 Python에서 엑셀을 제어할 수 있는 라이브러리다. VBA와 연계된 Python script가 필요하다면…

  • Programming,  Python

    [Python] Pandas DataFrame 간단한 사용법

    Python에서 Pandas library를 통해 데이터 전처리가 널리 이용되면서 대표적 자료구조인 DataFrame 사용법을 아는 것이 중요해졌다. 따라서 이에 대해 간단하게 요약하고자 한다. 기본 구조 DataFrame은 기본적으로 행과 열로 구성되는 행렬이라 생각하면 쉽다. 위 그림을…

  • Programming,  Python

    [Python] glob Module 사용법

    glob은 Globs (Global Patterns)으로 Linux에서 널리 사용되온 pattern matching 기법이다. 주로 설정 내용을 프로젝트 내의 일부 파일에서만 적용하고 싶을 때 Globs가 사용되는데 대표적으로 .gitignore이 있다. 정규표현식 (Regular Expression)과 Globs는 비슷해 보이지만 문법이 미묘하게…

  • Git,  Programming

    [Git] Linear History with Foxtrot Merge

    Git은 history를 관리하는 방식이 크게 두 가지로 나뉜다. Linear history 장점: history graph가 깔끔해진다. 단점: patch 반영 시 conflict resolution이 번거롭다. Non-linear history 장점: pull (fetch and merge) command로 수행이 쉽다. 단점: history가…

  • Etc.,  Programming

    VS Code X11 Forwarding over SSH

    VSCode는 대중적으로 많이 이용되는 개발 tool 중 하나다. Code browser 와 함께 terminal도 많이 이용되는데, GUI를 보거나 하는 일이 많아지면서 X11 forwarding 기능도 요구되어 이렇게 사용법에 대해 정리한다. Windows X Server 다운로드 및…

  • C / C++,  Programming

    [C++] STL set / map사용법

    C++에서 다양한 STL을 제공하는데, 그 중에서 set과 map을 소개한다. 두 자료구조 모두 공통으로 associative container다. Sequential container: array, vector, list Associative container: set, map set set은 특정 기준에 의해 element가 자동으로 정렬되는 자료구조로…

  • C / C++,  Programming

    [C++] STL priority_queue 사용법

    C++에서 다양한 STL을 제공하는데, 그 중에서 priority_queue를 소개하고자 한다. Introduction 기본적으로 queue는 FIFO (First In First Out) 방식의 자료 구조로 들어온 순서로 나가는 순서도 동일한 자료구조다. 내가 만약 5, 3, 1, 2, 4…

  • Linux,  Programming

    [Linux] Redirection (2>&1)

    Linux shell에선 출력되는 결과를 다른 방식으로 변경하는 명령이 존재한다. Standard I/O 0: Standard input 우리가 키보드로 입력하는 것을 표준 입력이라고 말한다. 이는 file descriptor에 0번으로 지정되어 있다. 1: Standard output 우리가 모니터로 출력을…

  • Linux,  Programming

    [Linux] Shell: $* vs. $@

    Linux에서 shell script를 사용하다 보면 $*과 $@를 쉽게 볼 수 있다. $*: All the positional parameters (as a single word) $@: All the positional parameters (as separate strings) 차이점은 다음 예제 코드를 통해…