Это связано с тем, что у вас действительно маленький размер выборки.
Когда я пытаюсь запустить ваш код, я получаю
R2: 0.9030842872008327
При таком маленьком размере выборки (2 образца в вашемнабор тестов (8 в вашем поезде), вы не можете ожидать, что модель будет работать хорошо, и то, насколько хорошо она работает, определяется в основном тем, какие образцы отправляются на train
, а какие на test
на train_test_split
.
Попробуйте изменить train_test_split
строку на
certification_train,certification_test,salary_train,salary_test=train_t
st_split(np.array(certifications),np.array(salary),test_size=0.2, random_state=1)
и посмотрите, насколько сильно меняется ваш R2 в зависимости от выбранного случайного состояния!