Updated

Houston starter Wandy Rodriguez hadn't given up a home run in his first six starts this season.

That all changed on Monday night. Miami took him deep three times, and Carlos Zambrano did the rest.

Zambrano pitched a three-hitter for his first win of the season and Giancarlo Stanton extended his hitting streak to 10 games with a two-run homer, leading the Marlins to their seventh straight win with a 4-0 victory over the Astros.

Rodriguez (3-3) gave up a season-high four earned runs in eight-plus innings. He entered the game having won three straight and had allowed just three runs combined in those starts.

"That's what happens when I miss my location," Rodriguez said. "I faced a lot of very good hitters over there. I tried to put the ball wherever I wanted, but I missed a couple times."

Houston manager Brad Mills was disappointed that Rodriguez wasn't able to build on his early-season success.

"Anytime guys start hitting Wandy, you are surprised," Mills said. "Whether they are home runs or whatever, he's been throwing the ball so well, and to give up three in one game, that's surprising."

Stanton's homer into the Crawford Boxes in left field put Miami up 2-0 in the fourth inning and gives him six home runs and 12 RBIs during his streak. Logan Morrison walked with one out before Stanton went deep.

John Buck extended the lead to 3-0 when he sent the first pitch of the fifth inning into the right field stands. Hanley Ramirez added a solo shot, which bounced off the train tracks above the left center field wall, in the ninth inning to make it 4-0.

It was the first complete game and first shutout for Zambrano since a two-hit shutout against San Francisco on Sept. 25, 2009.

Zambrano (1-2), whose only no-hitter came against the Astros, struck out a season-best nine and never allowed a batter past first base. He walked one and hit two batters while improving to 10-4 in 19 appearances at Minute Maid Park.

Mills said Zambrano had good command of his pitches and made it tough for the Astros to get a beat on them.

"Zambrano, I don't think it's any big surprise, threw the ball extremely well tonight, and we couldn't get anything going," Mills said. "We didn't even have a guy at second base. It was tough to get anything going off of him. The way Zambrano pitched tonight, his sinker was moving one way, his slider was moving the other and his split was moving straight down."

Brian Bogusevic singled to left field with no outs in the ninth inning, but Miami turned its third double play of the game on a grounder by Jordan Schafer. Zambrano then struck out Jose Altuve to end it.

Zambrano hit Schafer on the right leg with a pitch in the sixth inning. Schafer fell to his knees writhing in pain before getting up and walking gingerly to first base while talking with manager Brad Mills and a trainer.

Schafer said he was OK, just a little sore after the game. He was impressed by Zambrano's performance.

"I got a couple good pitches my first at bat, and then, I don't think we saw another pitch to hit for a while," Schafer said. "He threw really well. He kept the ball down, threw in and out and would finish it off with a split or a slider."

Altuve grounded into a double play to get Zambrano out of the sixth. He sailed through the next two frames, retiring six in a row with two strikeouts, to reach the ninth.

Zambrano plunked Altuve on the left elbow with one out in the first inning. But J.D. Martinez struck out and was called for batter's interference to put Altuve out and end the inning.

Houston's first hit came when Travis Buck singled to start the third inning, but Zambrano faced the minimum in that inning thanks to a double play before a flyout by Rodriguez.

NOTES: Miami manager Ozzie Guillen became annoyed in his pregame chat with reporters when a Houston reporter asked him if the uproar over his comments about Fidel Castro, for which he was suspended five games, had died down in the last month. He told the reporter to "grow up" while including a couple of curse words. ... Guillen said he's hoping Heath Bell, who was demoted from the closer's role last week, can return to that role in the future. "We're a better ball club if Bell is our closer," he said. "That's no doubt and we need him to be our closer."... RHP Aneury Rodriguez will be recalled from Triple-A Oklahoma City on Tuesday to start against Miami's Anibal Sanchez.