본문 바로가기

Programming/Python

(5)
[Python][Error] ImportError: cannot import name 'plot_confusion_matrix' from 'sklearn.metrics' (/home/gil/anaconda3/envs/msb_pt/lib/python3.10/site-packages/sklearn/metrics/__init__.py) 이번에는 또 sklearn.metrics에서 plot_confusion_matrix를 찾을 수 없다는 에러가 뜹니다.   이런 에러는 100%에 99.99%는 버전 에러라고 생각하시면 됩니다.Scikit-learn 홈페이지에서 확인해보시면 plot_confusion_matrix 함수는 1.0.x 버전에서 사용되던 함수임을 알 수 있습니다.   제 scikit-learn 함수 버전을 뽑아보면 아래와 같습니다. conda list scikit 이를 해결하기 위한 방법은 크게 두가지 방법이 있습니다. 1. 버전 다운그레이드너무 간단하게 해결 가능한 방법 입니다.해당 함수가 사용가능한 버전으로 scikit-learn 버전을 다운그레이드 해주면 됩니다. pip install scikit-learn==1.0.2  ..
[Python][Error] TypeError: DataFrame.drop() takes from 1 to 2 positional arguments but 3 were given 이전에는 멀쩡히 잘 사용했던 코드인데, 갑자기 다음과 같은 에러가 뜹니다.  import pandas as pddf = pd.read_csv('../data/data.csv', engine='python')data_y = df['label']data_x = df.drop('label', 1) Pandas 깃허브에 들어가서 확인해보시면 그 이유를 알 수 있습니다.   버전업에 따라 drop 함수 1.x.x 버전에서는 뒤 변수들이  일반 위치인자 (positional arguments)로 인식합니다. 따라서 따로 인자명을 주지 않아도, 위치에 기반하여 순서대로 인식됩니다. (1은 당연히 다음 axis 변수에 대한 값임) 그러나 2.x.x 버전 부터는 drop을 포함한 다른 여러 함수들(concate...)에..
[Python] 파이썬에서 쓰레드 이용하여 이미지 병렬 처리 오늘은 파이썬에서 쓰레드(Thread)를 이용하여 이미지 영상처리 기법을 병렬로 처리하는 방법을 알아보겠습니다.  Thread란?**Thread(쓰레드)**는 컴퓨터 프로그램에서 실행되는 가장 작은 단위입니다. 하나의 프로세스(작업 단위)는 여러 쓰레드를 포함할 수 있으며, 이들 쓰레드는 동일한 메모리 공간을 공유하면서 독립적으로 실행될 수 있습니다. 쓰레드는 경량 프로세스(lightweight process)라고도 하며, 다중 작업을 수행할 때 사용됩니다.쓰레드의 특징동시성 (Concurrency):여러 쓰레드가 동일한 프로세스 내에서 독립적으로 실행될 수 있습니다.이를 통해 프로그램은 동시성을 가지며, 동시에 여러 작업을 수행할 수 있게 됩니다.메모리 공유:동일한 프로세스 내의 쓰레드는 메모리와 자원..
[Python][Error] ImportError: cannot import name 'if_delegate_has_method' from 'sklearn.utils.metaestimators' ML를 위해 코드를 작성하던 중 eli5 라이브러리가 필요하여 pip install eli5 를 진행하여 eli5 라이브러리를 설치했습니다.from eli5.sklearn import PermutationImportanceimport eli5 이후 위와 같이 간단학세 eli5 라이브러리를 import 하고 나면 아래와 같은 에러가 뜹니다. ImportError: cannot import name 'if_delegate_has_method' from 'sklearn.utils.metaestimators'위에 대한 에러 해결은 아래 깃허브 자료에서 자세한 내용 확인하실 수 있습니다.  https://github.com/manuel-calzolari/sklearn-genetic/commit/12ee9b2e59..
[Python] pydicom 다이콤파일 헤더 한글 깨짐 현상 흔히 의료영상에서는 다이콤(DICOM,  Digital Imaging and Communications in Medicine) 포맷을 사용합니다.  이때 다이콤 파일의 경우에는 헤더에 환자의 다양한 정보를 포함하고 있습니다. 다이콤 파일 속에 포함하는 헤더 정보는 아래에서 확인할 수 있습니다.  https://www.dicomlibrary.com/dicom/dicom-tags/ DICOM Library - Anonymize, Share, View DICOM files ONLINE www.dicomlibrary.com  한국에서는 한글이름을 사용하는데, 이 때 경우에 따라한글이름을 영문으로 작성해두는 경우와한글이름을 한글로 작성해두는 경우가 있을 수 있습니다.  다이콤 파일을 불러오기 위해서는 일반적으로 ..