This question has been asked on MathExchange to no avail.

Suppose G is a finitely generated nilpotent group with abelianization of rank r. Does G always have a subgroup H of finite index, such that H abelianized is a free abelian group of rank r?

Since this is MathOverflow, I will push the question further - under what conditions can we expect abelianization of a monic map to be monic?

Edit: We assume r to be positive.