I think it's easy: jobs as scientists in the U.S. suck relative to other jobs. See here: http://www.miller-mccune.com/science/the-real-science-gap-16...? for more. Basically, if you have the chops to get a job in science, you're probably better off doing something else (like med school; lots of people want to be doctors).
Consider that firefighters or cops get paid reasonably well; effectively can't be fired after a short probationary period unless they do something incredibly egregious because they're protected by unions; have jobs that demand physical activity, so they aren't just sitting in front of a screen all day; and, in the case of firefighters, have a level of social prestige that means (male) firefighters are almost universally admired by women.
Wanting to be a cop or firefighter requires a two-year degree, if that. Wanting to be a pediatric surgeon takes a minimum of 12 (four for undergrad, four for med school, four for residency, although I think it's more than four). Wanting to be an engineer takes at least four.