Untitled

 avatar
unknown
plain_text
a month ago
1.2 kB
12
Indexable
import os
os.environ['OPENBLAS_NUM_THREADS'] = '1'
from submission_script import *
from dataset_script import dataset

from sklearn.ensemble import RandomForestClassifier

col_index = int(input())
n_trees   = int(input())
criterion = input()
new_sample = [float(x) for x in input().split()]

def drop_col(row, i):
    return row[:i] + row[i+1:]

split_idx  = int(len(dataset) * 0.85)
train_data = dataset[:split_idx]
test_data  = dataset[split_idx:]

train_X = [drop_col(row[:-1], col_index) for row in train_data]
train_Y = [row[-1] for row in train_data]
test_X  = [drop_col(row[:-1], col_index) for row in test_data]
test_Y  = [row[-1] for row in test_data]

new_sample_processed = drop_col(new_sample, col_index)

classifier = RandomForestClassifier(n_estimators=n_trees, criterion=criterion, random_state=0)
classifier.fit(train_X, train_Y)

print(f"Accuracy: {classifier.score(test_X, test_Y)}")
print(classifier.predict([new_sample_processed])[0])
print(classifier.predict_proba([new_sample_processed])[0])

submit_train_data(train_X, train_Y)
submit_test_data(test_X, test_Y)
submit_classifier(classifier)
Editor is loading...
Leave a Comment