You loaded your data. You ran head(). Everything looks fine. It is not fine.
The data that looks fine in head() hides its problems. The missing values are three thousand rows down. The duplicates are in the middle.
The date column that looks like a date is actually a string and will break your model silently. The salary column has a value of negative forty thousand that nobody caught. Every real d