파이썬 14

Q. 윈도우 환경에서 아나콘다 없이 가상환경 설정, 주피터 노트북 사용하는 방법은?

환경 Windows 10 Pro python 3.8.10 IDE - PyCharm Communityn Eddition 2021.3 처음 파이썬과 데이터 분석을 배울 때, 강사 선생님이 아나콘다부터 깔아서 사용하고, 가상환경도 콘다를 이용해 설정하는 것을 가르쳐 주셨던 기억이 난다. 그런데 쓰면 쓸수록 무겁고, 경로 설정도 헷갈리고, 깔끔하게 아나콘다 없이 환경 관리를 하고 싶어졌다. 감사하게도 회사 컴퓨터를 gpu 3060이 달린 pc로 바꾸게 되어, 새롭게 환경 설정을 하게 되었고, 이제 처음부터 콘다 없는 깔끔한 환경과 경로를 유지하고 있다. Q 1. 아나콘다 없이 가상환경 설정하는 방법은? A. venv 또는 virtualenv로 하면 된다. 순전히 취향 차이인데 나는 virtualenv를 사용한다..

windows10 WSL 우분투에서 도커로 elasticsearch 8.3.0 설치 및 실행

엘라스틱서치는 역색인을 통해 풀텍스트서치를 지원해주어 검색의 속도와 성능이 뛰어나다고 들었다. NLP 솔루션 과정에서 엘라스틱서치를 활용할 수 있는지 모색하기 위해 엘라스틱서치를 설치하고 파이썬 클라이언트 패키지를 활용해 노트북에서 사용해봤다. 내 환경 : windows10 pro WSL2 ubuntu 20.04.4 LTS Docker Image 내려받기 Docker Image(https://www.docker.elastic.co)에서 os 및 버전에 맞게 선택 docker pull [docker.elastic.co/elasticsearch/elasticsearch:8.3.0-amd64]() 파이썬 클라이언트 패키지 설치, 엘라스틱 버전에 맞춰서 버전 설정해서 설치 pip3 install elastics..

OS/Windows 2022.07.20

Q. "ModuleNotFoundError: No module named 'ipython_genutils'\r\n" 에러 해결 방법은?

환경 Windows 10 Pro python 3.8.12 IDE - Visual Studio Code 파일 포맷 - .ipynb 에러 발생 상황 내가 작업하고 있던 컴퓨터에 다른 분이 원격 접속해 주피터 노트북에서 작성한 .ipynb 파일 작업을 하셨다. 정확히 어떤 작업을 하셨는지는 알지 못하지만, 내가 만든 가상환경 안에서 작업을 하신 상황. 원격 작업이 끝난 뒤에 내가 다시 작업을 하게 되었고, 이미 내가 기존에 만든 가상환경들에서 여러 에러를 경험하고 있는 상황. https://rollingsnowball.tistory.com/263 Q. The kernel failed to start due to an error with the Win32api module. Consider (re) instal..

카테고리 없음 2022.01.06

Q. ImportError: cannot import name 'filefind' from 'traitlets.utils' (C:\\ProgramData\\Anaconda3\\lib\\site-packages\\traitlets\\utils\\__init__.py) 에러 해결방법은?

환경 Windows 10 Pro python 3.8.12 IDE - Visual Studio Code 파일 포맷 - .ipynb 에러 발생 상황 내가 작업하고 있던 컴퓨터에 다른 분이 원격 접속해 주피터 노트북에서 작성한 .ipynb 파일 작업을 하셨다. 정확히 어떤 작업을 하셨는지는 알지 못하지만, 내가 만든 가상환경 안에서 작업을 하신 상황. 원격 작업이 끝난 뒤에 내가 다시 작업을 하게 되었고, 다른 폴더의 다른 파일을 작업하려 했으나 모듈을 import하는 첫번 째 셀부터 실행이 되지 않았다. 다른 가상환경에서는 이미 다른 에러를 경험해서 해결한 바 있는 상황. https://rollingsnowball.tistory.com/263 Q. The kernel failed to start due to..

카테고리 없음 2022.01.06

Q. The kernel failed to start due to an error with the Win32api module. Consider (re) installing this module. View Jupyter [log](command:jupyter.viewOutput) for further details. 에러 해결 방법은?

환경 Windows 10 Pro python 3.8.12 IDE - Visual Studio Code 에러 발생 상황 내가 작업하고 있던 컴퓨터에 다른 분이 원격 접속해 주피터 노트북에서 작성한 .ipynb 파일 작업을 하셨다. 정확히 어떤 작업을 하셨는지는 알지 못하지만, 내가 만든 가상환경 안에서 작업을 하신 상황. 원격 작업이 끝난 뒤에 내가 다시 작업을 하게 되었고, 다른 폴더의 다른 파일을 작업하려 했으나 모듈을 import하는 첫번 째 셀부터 실행이 되지 않았다. 에러 메세지 The kernel failed to start due to an error with the Win32api module. Consider (re) installing this module. View Jupyter [lo..

카테고리 없음 2022.01.06

Q. FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\User\\AppData\\Local\\Temp\\_MEI146082\\soynlp\\noun/frequent_enrolled_josa.txt'[11696] Failed to execute script 'main' due to unhandled exception! 에러 해결방법은?

환경 Windows 10 Pro python 3.8.12 IDE - Visual Studio Code 에러 발생 상황 파이썬으로 작성한 자연어 처리 프로그램을 pyinstaller를 통해서 exe 실행파일로 만들었다. konlpy와 soynlp로 형태소 분석, 명사 추출 등을 수행하는 전처리 과정이 포함된 프로그램이다. 여러가지 지저분한 .dll 파일들이 포함되는 옵션에서는 실행파일이 잘 실행됨을 확인하였다. 그 다음에 --F 옵션을 활용하여 one-file로 만들고, 실행파일이 잘 돌아가는지 테스트하는데 에러가 발생했다. 에러 메세지 FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\User\\AppData\\Local\\Temp\..

카테고리 없음 2021.12.21

leetcode 5. Longest Palindromic Substring 리트코드 5. 가장 긴 팰린드롬 부분 문자열

책에서 다룬 리트코드 문제들을 풀이한 포스팅이다. 문제는 모두 리트코드에 출제된 문제들이며, 직접 풀었지만, 책에서 주는 힌트와 풀이 과정들을 참고한 경우가 많다. 이곳은 정리한 책에 나온 문제에 대한 목록과 해설을 정리한 공식 깃허브 페이지 이며, 다음 포스팅은 내가 푼 문제 풀이 목록을 정리해 놓았다. 문제 가장 긴 팰린드롬 부분 문자열 입력: 문자열 출력: 문자열 문제 요약: 주어진 문자열에서 찾을 수 있는 가장 긴 팰린드롬을 출력하기 유의 사항: 예를 보면 "a", "ac" 가 입력일 때 모두 "a"가 출력되었다. len(a)이 1이거나 같은 팰린드롬이 없을 때는 a[0]이 출력되는 듯 그리고, 문자열 내에 대문자/소문자 모두 들어가 있다고 하니까 .lower()를 통해 모두 소문자로 변환해줘야할..

leetcode 49. Group Anagrams 리트코드 49. 그룹 애너그램 문제 풀이

책에서 다룬 리트코드 문제들을 풀이한 포스팅이다. 문제는 모두 리트코드에 출제된 문제들이며, 직접 풀었지만, 책에서 주는 힌트와 풀이 과정들을 참고한 경우가 많다. 이곳은 정리한 책에 나온 문제에 대한 목록과 해설을 정리한 공식 깃허브 페이지 이며, 다음 포스팅은 내가 푼 문제 풀이 목록을 정리해 놓았다. 문제 그룹 애너그램 입력: 문자열로 된 리스트 출력: 문자열로 된 리스트의 리스트 문제 요약: 애너그램은 문자를 재배열하여 다른 뜻을 가진 단어로 바꾸는 것을 뜻한다고 한다. (출처: 파이썬 알고리즘 인터뷰) 예를 들어 'eat' 과 'tea' 와 같은 것이다. 유의 사항: strs[i].length == 0 인 경우도 포함된다. 즉, 아무것도 없는 빈 원소까지 고려해서 짜야 한다. 생각 과정 같은 애..

leetcode 937. Reorder Data in Log Files 리트코드 937. 로그 파일 재정렬 풀이

책에서 다룬 리트코드 문제들을 풀이한 포스팅이다. 문제는 모두 리트코드에 출제된 문제들이며, 직접 풀었지만, 책에서 주는 힌트와 풀이 과정들을 참고한 경우가 많다. 이곳은 정리한 책에 나온 문제에 대한 목록과 해설을 정리한 공식 깃허브 페이지 이며, 다음 포스팅은 내가 푼 문제 풀이 목록을 정리해 놓았다. 문제 리트코드 로그파일 재정렬 입력: list (string) 출력: list (string) 문제 요약: string이 원소인 리스트를 받아 정렬만 해서 다시 리스트로 출력한다. 그런데, 정렬의 기준이 조금 달라서 그 기준에 맞춰 정렬해야 한다는 점이 포인트 생각 과정 일단 각 원소를 띄어쓰기를 기준으로 쪼개서 리스트로 만든 다음, 각 로그의 첫번째 부분은 식별자라고 해서 식별자와 나머지로 나눠보았다..

leetcode 819. Most Common Word 리트코드 819. 가장 흔한 단어 문제 풀이

책에서 다룬 리트코드 문제들을 풀이한 포스팅이다. 문제는 모두 리트코드에 출제된 문제들이며, 직접 풀었지만, 책에서 주는 힌트와 풀이 과정들을 참고한 경우가 많다. 이곳은 정리한 책에 나온 문제에 대한 목록과 해설을 정리한 공식 깃허브 페이지 이며, 다음 포스팅은 내가 푼 문제 풀이 목록을 정리해 놓았다. 문제 leetcode.com/problems/most-common-word/ 입력 : string data type인 paragraph , list data type인 banned 출력: string data type 문제 요약: 가장 자주 등장하는 단어를 고른다. 단, 따로 뽑아 놓은 banned 리스트에 있는 단어는 제외하고. 생각 과정 1. 하나의 문장을 단어 단위로 쪼개고, (.split()) ..

.get() 딕셔너리에서 key를 사용해 value 얻기

dict_name[key] 입력 : key 출력: value 파이썬의 딕셔너리는 key, value 쌍으로 이루어진 해시형 자료구조이다. john = {'phone': '01840125784' , 'birthday': '19930512' , 'e-mail': 'johndoe@gmail.com' } 특정 key 값에 있는 value를 호출하고 있으면, dict_name[key] 를 사용하는데, dict_name.get(key)를 써도 똑같은 값을 return 한다. print(john['phone']) print(john.get('phone')) >> '01840125784' '01840125784' 둘의 차이점은 딕셔너리에 없는 key 값으로 호출할 때 있다. dict_name[key] 는 KeyErro..

Programming/Python 2021.05.04

numpy, pandas 연습 문제 링크

프로그래머스 AI 수업 멘토님이 추천해주신, numpy, pandas 연습 문제들을 모아놓은 링크 넘파이와 판다스 각각 101 문제씩 있고, 1번은 그냥 프린트 찍어라 수준의 아주 아주 쉬운 문제이기 때문에 쭉 아래로 훑어 가면서 보다가 '가물가물하다' 싶은 부분부터 보면서 연습문제를 풀어보면 좋을 것 같다. www.machinelearningplus.com/python/101-numpy-exercises-python/ 101 Numpy Exercises for Data Analysis The goal of the numpy exercises is to serve as a reference as well as to get you to apply numpy beyond the basics. The ques..

Data/Pandas 2021.05.03

set() - from list to set 리스트를 해시형 데이터 타입인 셋으로 변환하기

set 은 집합 자료형이다. 집합 연산을 쉽게 할 수 있다. 리스트를 셋으로 만들어 주면 데이터 타입이 1)해시형 데이터 타입 셋으로 바뀌면서 2)중복을 제거하고 3)정렬해준다. l = [1,2,3,4,5,1] ls= set(l) ls >> {1, 2, 3, 4, 5} 이와 같은 특징 때문에 중복을 제거하고 싶거나 정렬을 계속 해줘야 할 때 set 자료형을 활용한다. 리스트 말고 문자열도 set()으로 셋으로 만들어 줄 수 있다. s = "Hello" ss = set(s) ss >> {'H', 'e', 'l', 'o'} 정렬하고, 중복을 제거하는데, 대문자가 우선한다. 근데 리스트의 원소도 리스트면 set 변환이 되지 않고 type 에러가 난다. ll = [[1,1],[2,1],[1,2],[3,4],[2..

Programming/Python 2021.04.26