Preparar os conjuntos de dados públicos em Conjuntos de dados SDOH - Transformações (versão preliminar)
[Este artigo faz parte da documentação de pré-lançamento e está sujeito a alterações.]
Os conjuntos de dados públicos SDOH contêm dados agregados de determinantes sociais da saúde (SDOH) publicados por agências governamentais e outras fontes oficiais, como universidades. Esses conjuntos de dados consolidam vários parâmetros SDOH em níveis geográficos, como estado, município ou CEP. Conjuntos de dados SDOH - Transformações (versão preliminar) permite que você faça a ingestão desses conjuntos de dados em nível geográfico no formato CSV (valores separados por vírgula) ou XLSX (planilha Excel Open XML) e normalize-os em um modelo de dados personalizado.
A versão preliminar fornece os seguintes oito conjuntos de dados SDOH de exemplo de vários domínios SDOH para ajudar você a executar pipelines de dados e explorar transformações de dados por meio das camadas bronze, prata e ouro:
Atlas do Ambiente Alimentar do USDA: inclui fatores como proximidade da loja/restaurante, preços dos alimentos, programas de assistência nutricional e características da comunidade. Esses fatores afetam as escolhas alimentares, a qualidade da dieta e, em última análise, os resultados de saúde.
Atlas Rural do USDA: oferece estatísticas sobre fatores socioeconômicos, como pessoas, empregos, classificações de municípios, renda e veteranos.
Dados SDOH da AHRQ: fornece detalhes em cinco domínios SDOH importantes:
- Contexto social, como idade, raça/etnia, status de veterano.
- Contexto econômico, como renda, taxa de desemprego.
- Educação
- Infraestrutura física, como moradia, criminalidade, transporte.
- Contexto de serviços de saúde, como plano de saúde.
Índice de acessibilidade do local: estima os custos de moradia e transporte das famílias no nível do bairro.
Índice de justiça ambiental: agrega dados de várias fontes para classificar os impactos cumulativos da injustiça ambiental na saúde para cada setor do censo.
Pesquisa ACS Education Attainment: fornece insights educacionais para áreas geográficas, derivados de uma grande pesquisa demográfica em andamento.
SEIFA australiano: combina dados do censo australiano, como renda, educação, emprego e moradia, para resumir as características socioeconômicas de uma área.
Índices de privação do Reino Unido: uma medida socioeconômica amplamente utilizada no Reino Unido para avaliar a pobreza em pequenas áreas, cobrindo várias dimensões.
Onde:
- USDA: Departamento de Agricultura dos Estados Unidos
- AHRQ: Agência de Pesquisa e Qualidade em Saúde
- ACS: Pesquisa com a Comunidade Americana
- SEIFA: Índices Socioeconômicos por Áreas
Importante
Esses conjuntos de dados não são apenas exemplos, mas conjuntos de dados completos e reais publicados pelas respectivas organizações. Eles fornecem uma representação precisa dos perfis SDOH de suas áreas geográficas. Tenha cuidado ao modificá-los, pois são publicações oficiais de órgãos federais.
Estrutura de pastas
A zona de destino para Conjuntos de dados SDOH - Transformações (versão preliminar) compreende três pastas: Ingerir, Processar e Com Falha. Para saber mais sobre essas pastas, consulte Estrutura de pastas unificada.
Preparar os conjuntos de dados SDOH antes da ingestão
Antes de ingerir conjuntos de dados públicos SDOH, verifique se eles estão prontos para uma ingestão com êxito. As seções a seguir descrevem dois cenários:
- Usar seu próprio conjunto de dados
- Usar o conjunto de dados de exemplo
Usar seu próprio conjunto de dados
Os conjuntos de dados públicos SDOH variam significativamente entre as organizações de publicação em formato, volume e estrutura. Eles não têm um padrão estabelecido para coletar e trocar as informações capturadas. Portanto, unificá-los em uma forma comum é essencial antes de representá-los em um modelo de dados.
Para ingerir e transformar um conjunto de dados público SDOH de sua escolha, adicione a eles as três informações principais a seguir:
Layout: devido à ausência de um conjunto padrão de códigos para capturar dados SDOH, entender o significado de cada campo é um desafio. Para resolver esse problema, crie um dicionário de dados para o conjunto de dados adicionando uma nova planilha chamada Layout (se o conjunto de dados estiver no formato XLSX) ou crie um arquivo CSV (se o conjunto de dados estiver no formato CSV) com as colunas exibidas no exemplo a seguir:
DataSetMetadata: como os conjuntos de dados SDOH vêm de diferentes editores, o registro de detalhes importantes sobre o conjunto de dados é crucial. Adicione uma nova planilha chamada DataSetMetadata (se o conjunto de dados estiver no formato XLSX) ou crie um arquivo CSV (se o conjunto de dados estiver no formato CSV) com as colunas exibidas no exemplo a seguir:
LocationConfiguration: diferentes geografias definem e organizam os dados de localização de várias maneiras. Para ajudar os pipelines SDOH a entender a estrutura geográfica do conjunto de dados, adicione uma nova planilha chamada LocationConfiguration (se o conjunto de dados estiver no formato XLSX) ou crie um arquivo CSV (se o conjunto de dados estiver no formato CSV) com as colunas exibidas no exemplo a seguir:
Também:
- Você pode consultar a estrutura dos conjuntos de dados SDOH de exemplo para preencher as informações necessárias, como categoria de determinante social, metadados e chave de harmonização.
- Se preferir não ingerir determinados campos do conjunto de dados original, remova-os da planilha de dados ou deixe seus detalhes em branco na planilha de layout. Em ambos os casos, eles não são incluídos no modelo de dados prata.
- Conjuntos de dados com o mesmo nome, data de publicação e editor são tratados como duplicidades.
Usar o conjunto de dados de exemplo
Os conjuntos de dados SDOH de exemplo fornecidos com soluções de dados de serviços de saúde vêm pré-preenchidos com todas as informações de pré-requisito e estão disponíveis em seu OneLake. Você pode extraí-los localmente.
Carregar conjuntos de dados no espaço de trabalho do Fabric
Depois que os conjuntos de dados estiverem prontos, escolha uma das duas opções a seguir para carregá-los. Você poderá usar a Opção 2 somente se estiver usando o conjunto de dados de exemplo fornecido com Conjuntos de dados SDOH - Transformações (versão preliminar).
- Opção 1: carregar manualmente os conjuntos de dados.
- Opção 2: usar um script para carregar os conjuntos de dados.
Carregar manualmente os conjuntos de dados
Em seu ambiente de soluções de dados de serviços de saúde, selecione o lakehouse healthcare#_msft_bronze.
Abra a pasta Ingerir. Para saber mais, consulte Descrições das pastas.
Selecione as reticências (...) ao lado do nome da pasta e selecione Carregar pasta.
Carregue os conjuntos de dados do seu sistema local. Use o explorador de arquivos do OneLake para encontrar os conjuntos de dados no seguinte caminho:
<workspace name>\healthcare#.HealthDataManager\DMHSampleData\8SdohPublicDataset
.Atualize a pasta Ingerir. Agora, você deve ver os arquivos do conjunto de dados na subpasta SDOH.
Usar um script para carregar os conjuntos de dados
Importante
Use essa opção somente se estiver usando o conjunto de dados de exemplo fornecido.
Acesse o espaço de trabalho do Fabric para soluções de dados de serviços de saúde.
Escolha + Novo item.
No painel Novo item, pesquise e selecione Notebook.
Copie o seguinte trecho de código no notebook:
workspace_name = '<workspace_name>' # workspace name one_lake_endpoint = "<OneLake_endpoint>" # OneLake endpoint solution_name = "<solution_name>" # solution name bronze_lakehouse_name = "<bronze_lakehouse_name>" # bronze lakehouse name def copy_source_files_and_folders(source_path, destination_path): source_contents = mssparkutils.fs.ls(source_path) # list the source directory contents # list the destination directory contents try: if mssparkutils.fs.exists(destination_path): destination_contents = mssparkutils.fs.ls(destination_path) destination_files = {item.path.split('/')[-1]: item.path for item in destination_contents} else: print(f"Destination path {destination_path} does not exist.") destination_files = {} except Exception as e: print(f" Error: {str(e)}") destination_files = {} # copy each item inside the source directory to the destination directory for item in source_contents: item_path = item.path item_name = item_path.split('/')[-1] destination_item_path = f"{destination_path}/{item_name}" # recursively copy the contents of the directory if item.isDir: copy_source_files_and_folders(item_path, destination_item_path) else: if item_name in destination_files: print(f"File already exists, skipping: {destination_item_path}") else: print(f"Creating new file: {destination_item_path}") mssparkutils.fs.cp(item_path, destination_item_path, recurse=True) # define the source and destination paths with placeholder values data_manager_solution_path = f"abfss://{workspace_name}@{one_lake_endpoint}/{solution_name}" data_manager_sample_data_path = f"{data_manager_solution_path}/DMHSampleData" sdoh_csv_data_path = f"{data_manager_sample_data_path}/8SdohPublicDataset/csv" sdoh_xlsx_data_path = f"{data_manager_sample_data_path}/8SdohPublicDataset/xlsx" destination_path_csv = f"abfss://{workspace_name}@{one_lake_endpoint}/{bronze_lakehouse_name}.Lakehouse/Files/Ingest/SDOH/CSV" destination_path_xlsx = f"abfss://{workspace_name}@{one_lake_endpoint}/{bronze_lakehouse_name}.Lakehouse/Files/Ingest/SDOH/XLSX" # copy the files along with their parent folders copy_source_files_and_folders(sdoh_csv_data_path, destination_path_csv) copy_source_files_and_folders(sdoh_xlsx_data_path, destination_path_xlsx)
Execute o notebook. Os conjuntos de dados SDOH de exemplo agora são movidos para o local designado na pasta Ingerir.
Os conjuntos de dados SDOH agora estão prontos para ingestão.