我正在使用随机森林分类器进行分类,在每次迭代中我得到不同的结果。我的代码如下。
input_file = 'sample.csv'
df1 = pd.read_csv(input_file)
df2 = pd.read_csv(input_file)
X=df1.drop(['lable'], axis=1) # Features
y=df2['lable'] # Labels
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)
clf=RandomForestClassifier(random_state = 42, class_weight="balanced")
clf.fit(X_train,y_train)
y_pred=clf.predict(X_test)
print("Accuracy:",metrics.accuracy_score(y_test, y_pred))
根据其他answers的建议,我添加了参数n_estimators
和random_state
。但是,它对我不起作用。
我已将csv文件here附加:
很高兴在需要时提供更多详细信息。
答案 0 :(得分:1)
您还需要为火车测试拆分设置随机状态。
以下代码将为您提供可重复的结果。推荐的方法是不要更改random_state值以提高性能。
> isTruthy('')
[1] FALSE
输出:
准确度:0.6777777777777778