-1
私は、scanditにpandasを介してCSVファイルを読み込み、ターゲット列を20個のカテゴリ変数のリストに設定しようとしていました。私はlabel_binarizeを使ってみましたが、それは何らかの読書の後で私がLabelEncoderに切り替えた後に何か良いことをしていないようですが、それはあまり変わっていないようです。私はこれを実行するとScikit-learn 2値カテゴリ化データ
from io import StringIO
import matplotlib.pyplot as plt
from sklearn.metrics import accuracy_score
from sklearn.model_selection import StratifiedKFold
from sklearn.model_selection import permutation_test_score
from sklearn import svm, datasets
from sklearn.metrics import roc_curve, auc, confusion_matrix
from sklearn.model_selection import train_test_split, ShuffleSplit
from sklearn.preprocessing import label_binarize, MultiLabelBinarizer, LabelEncoder
from sklearn.multiclass import OneVsRestClassifier
from sklearn.tree import DecisionTreeClassifier
from sklearn.neighbors import KNeighborsClassifier
from sklearn.ensemble import VotingClassifier
from sklearn.naive_bayes import GaussianNB
#loading the data
data=pd.read_csv("data.csv")
y = data.iloc[:,19]
X = data.iloc[:,1:18+20:22]
#Binarize the output
le = LabelEncoder()
le.fit(["0-1","1-1.5","1.5-2","2-2.5","2.5-3","3-3.5","3.5-4","4-4.5","4.5-5","5-5.5","5.5-6","6-6.5","6.5-7","7-7.5","7.5-8","8-8.5","8.5-9","9-9.5","9.5-10","10+"
])
LabelEncoder()
le.transform(y)
y = label_binarize(y, le)
n_classes = y.shape[1]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=.5,
random_state=0)
model3 = KNeighborsClassifier(n_neighbors=7)
はまだ私が取得:
Traceback (most recent call last):
File "file, line 30, in <module>
le.transform(y)
File "C:\Anaconda3\lib\site-packages\sklearn\preprocessing\label.py", line 149, in transform
classes = np.unique(y)
File "\Anaconda3\lib\site-packages\numpy\lib\arraysetops.py", line 198, in unique
ar.sort()
TypeError: '>' not supported between instances of 'str' and 'float'
はscikitのためにも可能なターゲットデータのこの種のですか?私はあなたがこのような引用符でカテゴリデータ自体を囲むように必要見つけ、この問題を解決するので、[OK]を
完全なコードを投稿できますか?あなたが掲示したコードがスタックトレースのエラーと一致しません。 –
@VivekKumar余分なものをいくつか追加しました。モデルを実行する前に失敗するため、残りの部分を追加するのに本当の意味はありません。 – Exostrike
使用しているscikitのバージョンは? yのサンプルも表示してください。あなたはそれらがle.fit()で使った値であると確信していますか?もし私がそれらの値からy値を取るならば、期待通りに私のために働いています。 –