Neil Walker hit a three-run homer and knocked in four runs as the Pirates topped the Cardinals 6-4 from PNC Park. Ike Davis added two RBI for Pittsburgh, which has won three straight. Justin Wilson picked up the win but threw just four pitches. Mark Melancon notched save number three. Allen Craig hit a three-run home run for St. Louis, which has lost two of three. Jhonny Peralta also went deep in the loss. Carlos Martinez took the loss out of the bullpen.