He played in Major League Baseball (MLB) from 2007 to 2009 for the Houston Astros, Atlanta Braves, Detroit Tigers, and Kansas City Royals.
On November 16, 2007, Anderson was traded from the Astros to the Atlanta Braves in exchange for relief pitcher Óscar Villarreal.
On March 30, 2009, Anderson was traded to the Detroit Tigers in exchange for minor league pitcher Rudy Darrow.
On January 5, 2010, Anderson signed a minor league contract with the Cincinnati Reds that included an invitation to spring training.
On June 15, 2010, Anderson signed a minor league contract to return to the Atlanta Braves organization.