D3.js version 4 (4.2.1), solution 3 avec "jointure" de la structure des données
var dataset = [["a", "b"], ["c", "d"]],
index = [], indice = -1;
d3.selectAll("tr").selectAll("td")
.data(function (d, i) { index.push(i); return new Array(dataset[i].length); })
.text(function (d, i) { i == 0 && indice++; return dataset[index[indice]][i]; });