Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Recientemente me dieron un volcado de datos de aproximadamente 50 archivos CSV: cada archivo CSV representa una tabla de datos, cada uno de los cuales es una estructura de tabla / columna / esquema diferente.
Sé que puedo "combinar y cargar" si todos los archivos CSV fueran iguales y estuvieran ubicados en una carpeta
Me preguntaba en este caso, si cada CSV es un esquema diferente: ¿cómo puedo cargar todos estos?
¿Realmente tengo que ir a cada archivo CSV individualmente y cargarlo?
Solved! Go to Solution.
@rodneyc8063 , si no tienen nada en común entre sí, desafortunadamente tendrás que transformarlos todos por separado. =(
@rodneyc8063 , normalmente combinaría archivos que son como para como dentro de la misma carpeta. Posiblemente podría explorar los datos y agruparlos por carpetas específicas.
Sin embargo, si sabe que en cada uno de los archivos CSV está recogiendo solo los campos requeridos, es muy posible que solo los vuelque en una carpeta con la siguiente lógica de transformación dentro de la consulta auxiliar:
1. Seleccione todos los archivos en la carpeta
2. Promover encabezado. Quitar la evaluación de columna fija en el paso de origen
3. Seleccione solo las columnas requeridas. Agregar MissingField.Ignore opcional
let
// Remove fixed column criteria
Source = Csv.Document(Parameter1,[Delimiter=",", Encoding=1252, QuoteStyle=QuoteStyle.None]),
// Go ahead and promote all headers
PromoteHeaders = Table.PromoteHeaders(Source, [PromoteAllScalars=true]),
// Select columns. Ensure you add the optional MissingField.Ignore
SelectRequiredColumns = Table.SelectColumns(PromoteHeaders,{"Column1", "Column2", "Column3", "Column4"}, MissingField.Ignore)
in
SelectRequiredColumns
Como puede ver, en esta muestra, he pedido 4 columnas, pero como solo existen 2, solo se devuelven 2.
Y cuando expando para combinar todos los archivos CSV, en un archivo tengo dos columnas adicionales y también lo recogerá.
¿ @hnguy71
¡Esto es definitivamente bueno saberlo y un buen truco!
Espero no haber entendido mal tu truco, pero suena como "combinar archivos dentro de una carpeta" generalmente es para archivos que son como para me gusta?
En mi caso por ejemplo tengo un archivo CSV de nombre, luego otro archivo CSV de dirección, luego otro de número de teléfono etc. Por lo tanto, cada archivo CSV es una tabla en sí misma con columnas no relacionadas.
Esperaba que hubiera algo en lo que pudiera seleccionar todos los archivos y luego dejar que Power Query tomara todo y lo cargara todo en lugar de tener que abrir cada archivo y cargarlo individualmente.
¿No estás seguro de si existe algo así?
@rodneyc8063 , si no tienen nada en común entre sí, desafortunadamente tendrás que transformarlos todos por separado. =(
Gracias por confirmar esta triste noticia 😞
También gracias por el truco ordenado, ¡me aseguraré de tenerlo en cuenta si necesito hacer una importación masiva de archivos similares! 🙂