# Varying R-squared value

I'm new to machine learning, I have been doing a multiple linear regression (with 3 features,1 target). I'm using train_test_split module from sklearn to split the data into training and test data. Each time when I run the model I get different R-square values such as 0.6, 0.7, -0.122, 0.2, 0.9. How can I interpret this varying R-square value for the multiple linear regression? Is this behavior suggesting me to go for a non-linear regression?

• You are doing something wrong. First $R^2$ can't be negative. Second, while there could be some variation in it on re-runs of the model, what you post is not reasonable. But we'd need to know a lot more to be able to tell what you are doing wrong. It could be your N is too small, it could be an error in the code, it could be a problem in how you are splitting the data, and I'm sure there are other posssibilities. – Peter Flom - Reinstate Monica Jul 15 '18 at 16:57
• My data set is too small it contains only 18 rows, Training data size is 14 and test data size is 4. – PreeJackie Jul 15 '18 at 17:05