Promessas AJAX usando Array

Eu estou tentando fazer várias chamadas AJAX (digamos 2) usando promessas. Basicamente eu quero ser capaz de mesclar as duas respostas juntas, fazer algumas análises sobre elas como um todo, depois cuspir uma resposta. Agora eu tenho:

var responseArray = [];
for (var i=0; i<letsSayTwo; i++) {
  responseArray.push(someAjaxCall(data));
};
responseArray.done(function(response) {
  var spit = someAnalysis(response);
  console.log(spit);
});
responseArray.fail(function(response) {
  console.log('fail');
});

Do jeito que está, estou recebendo um erro "Erro de tipo de objeto não identificado: Objeto [Array de objeto] não tem nenhum método 'concluído'" no console. Estou correto em pensar que não posso usar esse método? Eu olhei para usar o seguinte bit de código de (http://gregfranko.com/blog/jquery-best-practices/) mas não consigo obter a resposta de que preciso.

$.when.apply(this, responseArray).then(function(response) {
  console.log(response);
});

Em vez disso, o que obtenho é [resposta, "sucesso", resposta] em que a primeira resposta é a resposta de retorno correta para uma das chamadas AJAX e a última resposta é a própria chamada em si. Como devo obter as respostas corretas de ambas as chamadas AJAX?

Espero que isso tudo faça sentido. Obrigado!

questionAnswers(1)

yourAnswerToTheQuestion