General Salvador Cienfuegos, the defense minister, read out the apology before 26,000 soldiers assembled at a military base in Mexico City.
"In the name of all of us who make up this great national institution, I offer my heartfelt apology to all in society wronged by this impermissible event," Cienfuegos said.