Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
Syndicate_Admin
Administrator
Administrator

La consulta XML tiene valores y tablas anidadas. ¿Cómo recupero el primer valor de la tabla?

Solo para algunos antecedentes: soy completamente nuevo en Power Query. Descargué todos los XMLs públicos de clinicaltrials.gov y habría ordenado los archivos que necesitaba. Ejecuto una Power Query en la carpeta (que contiene aproximadamente 40.000 archivos XML). Todo se carga como se esperaba, excepto dos columnas: start_date &completion_date como se muestra en la imagen. Ambas columnas contienen fechas dentro de celdas individuales, así como tablas anidadas. Si hago clic en una tabla, muestra celdas adicionales. Realmente solo necesito la fecha que está en la primera columna de esta tabla anidada. El código que tengo hasta ahora a está a continuación. ¿Hay alguna manera de mostrar las fechas en estas columnas, así como la fecha del primer valor de las tablas anidadas en las columnas?

Curiosamente, Power Query me permite expandir la columna primary_completion_date sin ningún problema (como se muestra). Si uso la misma función para expandir start_date o completion_date columnas, obtengo un error "Expression.Error: No podemos convertir el valor "Septiembre de 1997" al tipo Tabla". (en la imagen).

let

     Source = Folder.Files("C:\Users\Vosyn\Documents\NIH"),
     #"Filtered Hidden Files1" = Table.SelectRows(Source, each [Attributes]?[Hidden]? <> true),
     #"Invoke Custom Function1" = Table.AddColumn(#"Filtered Hidden Files1", "Transform File", each #"Transform File"([Content])),
     #"Renamed Columns1" = Table.RenameColumns(#"Invoke Custom Function1", {"Name", "Source.Name"}),
     #"Removed Other Columns1" = Table.SelectColumns(#"Renamed Columns1", {"Source.Name", "Transform File"}),
     #"Expanded Table Column1" = Table.ExpandTableColumn(#"Removed Other Columns1", "Transform File", Table.ColumnNames(#"Transform File"(#"Sample File"))),
     #"Changed Type" = Table.TransformColumnTypes(#"Expanded Table Column1",{{"Source.Name", type text}, {"required_header", type any}, {"id_info", type any}, {"brief_title", type text}, {"acronym", type text}, {"official_title", type text}, {"sponsors", type any}, {"source", type text}, {"oversight_info", type any}, {"brief_summary", type any}, {"detailed_description", type any}, {"overall_status", type text}, {"start_date", type any}, {"completion_date", type any}, {"primary_completion_date", type any}, {"phase", type text}, {"study_type", type text}, {"has_expanded_access", type text}, {"study_design_info", type any}, {"primary_outcome", type any}, {"number_of_arms", Int64.Type}, {"enrollment", type any}, {"condition", type any}, {"arm_group", type any}, {"intervention", type any}, {"eligibility", type any}, {"overall_official", type any}, {"reference", type any}, {"verification_date", type date}, {"study_first_submitted", type date}, {"study_first_submitted_qc", type date}, {"study_first_posted", type any}, {"results_first_submitted", type date}, {"results_first_submitted_qc", type date}, {"results_first_posted", type any}, {"last_update_submitted", type date}, {"last_update_submitted_qc", type date}, {"last_update_posted", type any}, {"responsible_party", type any}, {"condition_browse", type any}, {"intervention_browse", type any}, {"provided_document_section", type any}, {"clinical_results", type any}})


in

#"Changed Type"

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Hay @Vosyn,

¿Su problema está resuelto?

Si el problema se ha resuelto, por favor adopte la solución para ayudar a los demás.

Si todavía tienes alguna pregunta, por favor no dudes en hacérmelo saber.

Saludos

enlace

¿Es esa la respuesta que estás buscando? Si este post ayuda, entonces por favor considere Aceptarlo como la solución. Realmente apreciar!

Syndicate_Admin
Administrator
Administrator

He estado usando columnas condicionales con la función "=Table.FirstValue([start_date] as table)." Me acerque a lo que necesito. Sin embargo, el problema que tengo ahora, es que si la celda ya contiene una fecha, esta función simplemente devolverá Error en la celda.

Hay @Vosyn,

Intente modificar el código.

vxulinmstf_0-1624432587953.png

#"Expanded Table Column1" = Table.ExpandTableColumn(#"Removed Other Columns1", "Transform File", Table.ColumnNames(#"Transform File","Sample File")),

Saludos

enlace

¿Es esa la respuesta que estás buscando? Si este post ayuda, entonces por favor considere Aceptarlo como la solución. Realmente apreciar!

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors