Podés hacer algo así...
   Código PHP:
    <?php
foreach ($data as $row) {
  echo '<tr><td>';
  if (isset($ultima_categoria) && $ultima_categoria == $row['categoria']) echo '---------';
  else echo $row['categoria'];
  echo '</td><td>' , $row['subcategoria'] , '</td></tr>';
  $ultima_categoria = $row['categoria']
}
?>