Appending dataframe with .values
.values coverts the dataframe into an array and remove the underlying structure introduced by pandas. The pandas DataFrame is a higher version of numpy array which gives the data a tabular look and feel which helps in better visualising the data (with the column names). However when we use .values we remove the higher structure and represent the data in a lower numpy array format. The advantage here is that the array format is computationally less expensive than the DataFrame format. In other words it increases the speed and allows faster computations. I hope this clears your question.