Codice di scripting per lo squilibrio di classe in biolabs arancione
-
31-10-2019 - |
Domanda
Sto cercando di manipolare alcuni dati in Biolabs Orange, usando il widget dello script Python incorporato e le informazioni su Biolabs Orange Tutorial sugli script.
Tuttavia, sto lottando per prendere i risultati di Smote e metterli in un formato per Orange:
Questo è il codice che sto usando nel widget dello script Python:
# Get libraries
import Orange
import numpy as np
from Orange.data import Domain, Table
from imblearn.over_sampling import SMOTE
#in_data = Orange.data.Table('WORKING_temp.csv')
df = in_data.copy()
# set variables for SMOTE
sm = SMOTE(random_state=42)
# get table of data (X) and class variables (y)
X, y = df.X, df.Y
# resample data and classes
X_res, y_res = sm.fit_sample(X, y)
df.X = X_res
df.Y = y_res
temp = Orange.data.Table(df.X, df.Y)
temp.domain = df.domain
out_data = Orange.data.Table(temp)
Il risultato è un valorerror, che penso sia correlato alla modifica della lunghezza delle variabili di classe e della tabella dei dati, lasciando la lunghezza dell'indice originale?
"ValueRror: impossibile trasmettere un array di input dalla forma (3724,10) in forma (3724)"
Nessuna soluzione corretta
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a datascience.stackexchange