"That's a tough way to win when a guy is that tough on you that deep into the game," Bogusevic said after Sanchez worked seven innings without allowing an earned run.
With game tied at 2 in the eighth, Travis Buck floated a two-out single into right field and raced around the bases when Bogusevic went the opposite way, hitting a fly ball off the left-field wall and out of the reach of Logan Morrison to score the winning run. The win snapped the Marlins' seven-game winning streak.
"Travis Buck, at first base, never broke stride," Astros manager Brad Mills said. "He knew there was two outs and he was gone as fast as he could. That's exactly the way you're supposed to do it, but sometimes guys want to look at the ball or whatever, but he took off right from the get-go and put himself in position to be able to score. That was great."
With the play developing in front of him and two outs, Buck wasn't about slow down.
"I knew right off the bat I was scoring," he said. "He was either going to catch it, or I was scoring. [Third-base coach Dave] Clark knew that I was going to score regardless. I wasn't even looking at him. In my mind I was scoring, whatever it takes. It definitely paid off."
Bogusevic, who was out of the starting lineup for the second day in a row, attacked the first pitch from reliever Ryan Webb to improve to .326 (15-for-46) as a pinch-hitter in his career.
"When you pinch-hit, you have to be aggressive," he said. "There's no time to see pitches. You get the first good one you see and try to put a good swing on it."
Buck's hustle paid dividends for the Astros in the sixth. Houston was staring at a 2-0 deficit and had managed only two singles through five innings when they loaded the bases with two outs against Sanchez on a pair of hits and a walk.
Buck hit a hard grounder to Infante, who couldn't quite pick the ball up and then threw it away as Buck crossed first base. Marwin Gonzalez and Jose Altuve both scored to tie the game.
"You put the ball in play, you've got to run hard down the line," Buck said. "With the bases loaded, I didn't hit the ball all that hard, but I was busting it down the line. I put pressure on the defense. It was huge."
Infante, who homered in the fourth inning, lamented the errors.
"I didn't get it and then I tried to hurry," he said. "It didn't feel comfortable when I threw it. I feel real bad for Anibal."
The Astros got a terrific starting effort from right-hander Aneury Rodriguez, who was called up from Triple-A Oklahoma City for his first start with the Astros this year. He worked six innings and gave up two hits -- solo homers to Infante and John Buck -- and struck out six batters.
Rodriguez, who was sent back to Oklahoma City following the game, wasn't even sure he was going to pitch a day earlier because of an illness.
"I don't think we could have asked anything more of Aneury," Mills said. "He was sick yesterday, really as the day went on, and felt much better. He came to the ballpark later today and said he was feeling well enough to pitch and went out there and gave us six innings."
Astros relievers Brandon Lyon, Wilton Lopez (3-0) and Brett Myers each threw a scoreless inning, with Myers improving to 8-for-8 in save chances.
"We faced a lot of good pitching over the course of the year so far, and we've not missed too many No. 1s and No. 2s," Myers said. "I think that might help us a little bit and be able to fight a little bit. You know it's going to be a tough game and you have to fight for everything you get.
"We've faced a lot of good pitching, and without that, I don't think these guys would learn you have to grind out at-bats. We had mistakes that went our way, and that gave us some life and we were able to pull it out."