2023년 2월 2일 목요일

Python 의 sklearn 에 있는 datasets 를 활용하는 방법

0.  sklearn package를 설치하면 학습용 데이터가 포함되어 있습니다.

    이것을 이용하는 방법에 대해 몇가지를 정리해 봅니다.

1. 데이터셋의 종류입니다.

    load_boston: 보스톤 집값 데이터

    load_iris: 아이리스 붓꽃 데이터

    load_diabetes: 당뇨병 환자 데이터

    load_digits: 손글씨 데이터

    load_linnerud: multi-output regression 용 데이터

    load_wine: 와인 데이터

    load_breast_cancer: 위스콘신 유방암 환자 데이터가 있고 그외에도 몇가지가 더있습니다.


2. 불러오려면

from sklearn import datasets
data = datasets.load_

와 같은 방법으로 불러오면 됩니다.

3. 공통 key는 다음과 같습니다.

    data: 샘플 데이터, Numpy 배열로 이루어져 있습니다.

    target: Label 데이터, Numpy 배열로 이루어져 있습니다.

    feature_names: Feature 데이터의 이름

    target_names: Label 데이터의 이름

    DESCR: 데이터 셋의 설명

    filename: 데이터 셋의 파일 저장 위치 (csv)

4. 데이터를 불러오는 방법은

from sklearn import datasets
iris = datasets.load_iris()
iris

{'data': array([[5.1, 3.5, 1.4, 0.2],   [4.9, 3. , 1.4, 0.2],  [4.7, 3.2, 1.3, 0.2],  .....................

        [6.2, 3.4, 5.4, 2.3],   [5.9, 3. , 5.1, 1.8]]),

 'target': array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, .........

      2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]),

 'frame': None,

 'target_names': array(['setosa', 'versicolor', 'virginica'], dtype='<U10'),

 'DESCR': '... :Number of Instances: 150 ...'

 'feature_names': ['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)'],

 'filename': 'iris.csv',

 'data_module': 'sklearn.datasets.data'}

4. 이렇게 불러온 데이터를 pandas(판다스)로 불러오는 방법은 여러가지가 있으나 아래와 같은 방법이 간명하더군요.

from sklearn import datasets
import pandas as pd
iris = datasets.load_iris(as_frame=True)
df = iris.data
df['target'] = iris['target']



5. target의 number를 polynominal로 바꾸려면

iris = datasets.load_iris(as_frame=True)
df = iris.data
df['target']=iris.target
# 0.0, 1.0, 2.0으로 표현된 label을 문자열로 매핑
#df['target'] = df['target'].map({0:"setosa", 1:"versicolor", 2:"virginica"})
idic = {i:j for i,j in enumerate(iris['target_names'])}
df['target'] = df['target'].map(idic)

6. 오렌지의 파이썬스크립트 위젯





델파이 12.1이냐 11.3이냐?

 델파이가 12.1이 나왔습니다. 혹시 11.3버전의 커뮤니티버전이 필요하시는분이 있을 수 있을 것 같아 https://altd.embarcadero.com/.../RADStudio_11_3_esd_28... 와 이것 찾느랴 엄청고생함.