It is very common to see people try to change others, whether it be a significant other, a family member, or friend. The truth of the matter is, the person is never going to change if they do not want to change. Sometimes people might go through the motions of trying to change to make the other person happy but usually those changes are temporary and are not authentic to the individual which is why the changes are not permanent. It is for this reason why I do not believe that you can change others but at the very least, you can positively impact others as an alternative. By that, I mean that you can try to be a good influence on someone and over time, the other person might be motivated to change–for themselves and not because you pressured them to.
I find the best way to influence others is to practice what you preach and to lead by example. If you have good habits, it is natural for the other person to want to emulate you which is a good thing. It could take time and as I mentioned, it is ultimately up to the other person to want to change at the end of the day. It is important to understand that even with your very best efforts to promote change and your unlimited support, the other person might never change. If this is the reality, then it is up to you to accept the person as is or depending on the situation, it might be best to reject the person altogether–as harsh as that sounds.
If you find that the other person has qualities that you desperately want to change and these changes are simply not feasible, it is okay to remove this person from your life. I say that because it is not worth spending time with someone who has many qualities that you find undesirable. As they say, “birds of a feather flock together” which is why it is best to surround yourself around others who are like minded like yourself in which you would not find a need to change the other person to begin with.