##sklearn train test split
from sklearn.model_selection import train_test_split
X = df.drop(['target'],axis=1).values # independant features
y = df['target'].values # dependant variable
# Choose your test size to split between training and testing sets:
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=42)
#OR Randomly split your whole dataset to your desired percentage, insted of using a ttarget variable:
training_data = df.sample(frac=0.8, random_state=25) #here we choose 80% as our training sample and for reproduciblity, we use random_state of 42
testing_data = df.drop(training_data.index) # testing sample is 20% of our initial data