목록메모장 (12)
LearnRun

◆ Contents Pandas Import import pandas as pd Pandas란? Pandas는 Json와 더불어, csv 등의 스프레드시트 처리에 상당한 효율을 보이는 라이브러리입니다. 스프레드 시트의 데이터에서 원하는 데이터만 선택하거나, 그를 Join하거나 선별하여 Grouping을 할 수 있습니다. 즉, 데이터 분석, 가공, 연산 등 빅데이터 분야에서도 굉장히 요긴하게 쓰입니다. 실제로, 내가 openpyxl을 통해서 시트 데이터를 처리해왔던 때에는 데이터 처리에 갖은 고생을 했으나, Pandas를 직접 사용한 후, openpyxl은 그냥 엑셀로 출력하는 데에만 그 용도를 두게 되었습니다. (...) Pandas의 데이터 구조체 Series [1D] - 시트의 한 열(Col), 한 ..
콘솔로 접속을 해서 프로그램을 돌리고 있었는데, 윈도우즈 업데이트를 하면서 Putty가 저절로 종료 되었다. 계속해서 작업이 돌아 갔어야 했는데, 아침에 보고 망연자실.... 이럴려고 리눅스 했나 하는 자괴감이 들었다. 그래서, 프로그램이 윈도우즈의 서비스 모드처럼 가동되도록 하는 방법이 없는지 확인을 해보니 이런 방법이 있었다. 1.처음부터 백그라운드에서 실행 하기 명령 백그라운드에서 실행하기 nohup ./xxxxx & 기존에 사용하던 xxxxx 명령어에 nohup와 &를 앞 뒤로 붙여 주어야 한다. 백그라운드 명령 확인하기 jobs [1]+ Running nohup ./xxxxx [1]번으로 ./xxxxx 가 실행되는 것을 볼 수 있다. 백그라운드 명령 불러오기 fg %1 % 옆의 숫자는 jobs를..
리눅스에서 하드디스크 추가하는 방법은 하드디스크 장착한 후 이를 mount 하는 것이다. (하드디스크를 컴퓨터에 물리적으로 장착하는 것은 여기서 다루지 않음) 1. 관리자 권한 획득 하드디스크를 장착한 후, root 권한으로 변경한다. (su 이용하는 것이 편하다. 물론 sudo를 이용해도 무방하다) $ su 2. 하드디스크 목록 확인득 현재 장착된 하드디스크 목록을 확인할 수 있다. # fdisk -l --> 여기서 /dev/sda, /dev/sdb, /dev/sdc... 이렇게 기술된 부분이 물리적인 하드디스크를 말하며, /dev/sda1 ... 등 1,2,3.. 숫자가 붙으면 각 하드디스크별 파티션이라고 보면 된다. --> 새 하드디스크인 경우, 파티션 구분이 안되어 있을 것이다. 3. 새로 장착한..

문자열 두개를 비교하여, 가장 긴 공통 문자열의 수를 센 것이다. 즉, string1 = 'abcdef' string2 = 'cdba' 개인적인 느낌으로는 컨볼루션 연산이랑 비슷하다는 느낌을 받았는데(..) a b c d e f c a b c d e f c d a b c d e f c d b a b c d e f c d b a a b c d e f c d b a 와 같은 방식으로 끌고오며 최대로 일치하는 부분을 찾고 각 결과의 최댓값을 추적하는 것이다. 4만개 샘플로 확인했을때, SequenceMatcher과는 다른 결과가 꽤 나와 두 방법으로 모두 제작했다. 단일 프로세스로는 돌려볼 엄두를 못냈고, 1:40000의 비교에서 멀티프로세싱으로 30초~50초 사이의 시간이 소요되었다. def lcs(a, b..

import difflib difflib.SequenceMatcher(None, string1, string2).ratio() 두 문자열이 얼마나 일치하는지 파악하고자 할 때 쓰인다. 나는 더미 파일을 상당히 많이 들고있고, 그 중에서도 유독 정리가 난감했던 파일이 예전 앨범업체에서 작업할때 받은 소스들이 중복된채로, 압축된채로 상당히 난잡하게 얽혀있던 것들이었다. 하지만 파일명은 해상도 정보를 제외하곤 그 소스가 내포하는 정보를 나타내고 있어서, 파일명의 문자열 유사도를 파악해서 우선적으로 다량의 데이터를 처리할 수 있었다. 예를들어, 찻잔에 고양이가 들어있는 사진 파일이 2개라면, 하나는 teacup-cat.png, 다른 하나는 cat-cup.png와 같은 식으로 수백개의 폴더와 압축파일에 흩어져 있..