Christian Walker drove in two runs on two hits and Jose Altuve scored the game-winning run in the 10th on an error to lead the Houston Astros to a 5-4 win over the Los Angeles Angels.