DataTable com colunas e linhas dinâmicas

Pessoal,

Estou precisando criar um datatable cujas colunas sejam dinâmicas, ou seja, seu conteúdo é proveniente de uma lista de objetos.
Preciso fazer a mesma coisa com as linhas. É possível fazer isso usando o primeface?
Estou enviando em anexo uma figura de como a datatable deve ficar.

Cada coluna é uma lista diferente?

Caso sim, você precisa transformá-las em uma lista única, para usar o dataTable, no atributo “values”.

As colunas são provenientes de uma mesma lista.
O problema é que há uma lista dentro de outra lista, aí não sei como fazer com que as duas listas apareçam no datatable.
Eu preciso imprimir essa lista: [color=red]private List listaExibida;[/color]

Só que o tipo QuantitativoPorHospital também possui uma lista:

public class QuantitativoPorHospital {
	
	private Hospital hospital;
	
	private List<Quantitativo> listaQuantitativo;

	public Hospital getHospital() {
		return hospital;
	}

	public void setHospital(Hospital hospital) {
		this.hospital = hospital;
	}

	public List<Quantitativo> getListaQuantitativo() {
		return listaQuantitativo;
	}

	public void setListaQuantitativo(List<Quantitativo> listaQuantitativo) {
		this.listaQuantitativo = listaQuantitativo;
	}

}

O meu datatable está assim:

	   <p:dataTable id="tabelaQuantitativo" emptyMessage="Busca retornou nenhum resultado" value="#{exibicaoQuantitativoPCBean.listaEspecialidades}" var="especialidades"  style="width:1000px; height:1000px;">
	   		
	   		<p:column>
	   			<f:facet name="header">
	   				<h:outputText value="#{exibicaoQuantitativoPCBean.dia}" />
	   				<h:outputText value=" " />
	   				<h:outputText value="#{exibicaoQuantitativoPCBean.simboloTurno}" />
	   			</f:facet>
	   		
	   			#{especialidades.sigla}
	   		</p:column>
	   		
	   
	   		<p:columns  value= "#{exibicaoQuantitativoPCBean.listaExibida}" var="quantitativo" columnIndexVar="colIndex">
	   			<f:facet name="header">
	   				#{quantitativo.hospital.sigla}
	   			</f:facet>
	   				
	   		</p:columns>

Não consigo imprimir os valores da lista private List listaQuantitativo.
O resultado que consegui foi o da figura em anexo.