创建随机森林分类器模型以获取准确性得分数据。在File中,它由numeric,float,字符串类型数据组成。 遇到问题:-ValueError:无法将字符串转换为float:“管理”
import numpy as np
import random
from sklearn import metrics
data = pd.read_csv("C:\\Users\\username\\Documents\\train.csv") # reading csv file #
#data.head(10)
X = data.iloc[:, 0:17].values
y = data.iloc[:, 4].values
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
from sklearn.ensemble import RandomForestClassifier
clf = RandomForestClassifier(n_estimators=5)
clf.fit(X_train,y_train)
y_pred = clf.predict(X_test)
from sklearn.metrics import accuracy_score
print(accuracy_score(y_test, y_pred))
ValueError跟踪(最近一次通话最近) 在 28 29 clf = RandomForestClassifier(n_estimators = 5) ---> 30 clf.fit(X_train,y_train) 31 y_pred = clf.predict(X_test) 32
〜\ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ sklearn \ ensemble \ forest.py适合(自己,X,y,sample_weight) 247 248#验证或转换输入数据 -> 249 X = check_array(X,accept_sparse =“ csc”,dtype = DTYPE) 250 y = check_array(y,accept_sparse ='csc',确保_2d = False,dtype = None) 251如果sample_weight不是None:
〜\ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ sklearn \ utils \ validation.py在check_array中,warn_on_dtype,估算器) 494尝试: 495 warnings.simplefilter('error',ComplexWarning) -> 496数组= np.asarray(数组,dtype = dtype,order = order) 497(复杂警告除外): 498提高ValueError(“不支持复杂数据\ n”
〜\ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ numpy \ core \ numeric.py asarray(a,dtype,order) 536 537“”“ -> 538返回数组(a,dtype,copy = False,order = order) 539 540
ValueError:无法将字符串转换为float:'management'
在[]中:
答案 0 :(得分:0)
我无法发表评论,所以我在这里发布。
首先,请确保:
## I think you missed a 'd' in that variable name
ata = pd.read_csv("C:\\Users\\username\\Documents\\train.csv")
我认为您应该向我们提供您输入数据的样本。你们其中的一列似乎包含一种特定类型的引发数据ValueError("Complex data not supported\n")
通常,在导入数据时以及在将其输入算法之前,您应该始终进行一些基本的预处理,至少要确保数据格式正确。