Text/CSV
Resumen
Elemento | Descripción |
---|---|
Estado de la versión | Disponibilidad general |
Productos | Excel Power BI (Modelos semánticos) Power BI (Flujos de datos) Fabric (Flujo de datos Gen2) Power Apps (Flujos de datos) Dynamics 365 Customer Insights Analysis Services |
Documentación de Referencia de Funciones | File.Contents Lines.FromBinary Csv.Document |
Nota:
Algunas capacidades pueden estar presentes en un producto, pero otras no, debido a los programas de implementación y las capacidades específicas del host.
Funcionalidades admitidas
- Importar
Conectarse a un archivo de texto/CSV local desde el espacio de trabajo de Power Query
Para cargar un archivo de texto o CSV local:
Seleccione la opción del Texto / CSV en Obtener Datos. Esta acción inicia un explorador de archivos local donde puede seleccionar su archivo de texto.
Seleccione Abrir para abrir el archivo.
Desde el Navegador, puede transformar los datos en el editor de Power Query seleccionando Transformar Datos, o cargue los datos seleccionando Carga.
Conectarse a un archivo de texto / CSV desde Power Query Online
Para cargar un archivo de texto o CSV local:
Desde la página de Fuentes de datos, seleccionar Texto / CSV.
En Configuración de conexión, ingrese una ruta de archivo al archivo de texto o CSV local que desee.
Seleccione una puerta de enlace de datos local de la Pasarela de datos.
Introduzca un nombre de usuario y contraseña.
Seleccione Siguiente.
Desde el Navegador, seleccione Transformar Datos para comenzar a transformar los datos en el editor de Power Query.
Cargar desde la web
Para cargar un archivo de texto o CSV desde la web, seleccione la web del Conector, introduzca la dirección web del archivo y siga las indicaciones de credenciales.
Delimitadores de texto / CSV
Power Query tratará los CSV como archivos estructurados con una coma como delimitador, un caso especial de un archivo de texto. Si elige un archivo de texto, Power Query intentará determinar automáticamente si tiene valores separados por delimitadores y cuál es ese delimitador. Si puede inferir un delimitador, lo tratará automáticamente como una fuente de datos estructurada.
Texto no estructurado
Si su archivo de texto no tiene estructura, obtendrá una sola columna con una nueva fila por línea codificada en el texto de origen. Como ejemplo del texto no estructurado, puede considerar un archivo del bloc de notas con los siguientes contenidos:
Hello world.
This is sample data.
Cuando lo carga, se le presenta una pantalla de navegación que carga cada una de estas líneas en su propia fila.
Solo hay una cosa que puede configurar en este cuadro de diálogo, que es la selección desplegable del Archivo de Origen . Este menú desplegable le permite seleccionar qué conjunto de caracteres se utilizó para generar el archivo. Actualmente, el conjunto de caracteres no se infiere, y UTF-8 solo se inferirá si comienza con una Lista DE materiales UTF-8.
CSV
Puede encontrar un archivo CSV de muestra aquí.
Además del origen del archivo, CSV también admite la especificación del delimitador y la forma en que se manejará la detección de los tipos de datos.
Los delimitadores disponibles incluyen dos puntos, coma, signo igual, punto y coma, espacio, tabulación, un delimitador personalizado (que puede ser cualquier cadena) y un ancho fijo (dividir el texto en un número estándar de caracteres).
El menú desplegable final le permite seleccionar cómo desea manejar la detección de tipos de datos. Se puede hacer en función de las primeras 200 filas, en todo el conjunto de datos, o puede optar por no realizar la detección automática de los tipos de datos y, en su lugar, dejar que todas las columnas se establezcan de forma predeterminada en el "Texto". Advertencia: si lo hace en todo el conjunto de datos, puede hacer que la carga inicial de los datos en el editor sea más lenta.
Dado que la inferencia puede ser incorrecta, vale la pena verificar la configuración dos veces antes de cargar.
Texto estructurado
Cuando Power Query puede detectar la estructura de su archivo de texto, tratará el archivo de texto como un archivo de valores separados por delimitadores y le dará las mismas opciones disponibles al abrir un CSV, que es esencialmente solo un archivo con una extensión que indica el tipo de delimitador.
Por ejemplo, si guarda el siguiente ejemplo como un archivo de texto, se leerá como si tuviera un delimitador de tabulaciones en lugar de un texto no estructurado.
Column 1 Column 2 Column 3
This is a string. 1 ABC123
This is also a string. 2 DEF456
Esto se puede usar para cualquier otro tipo de archivo basado en delimitadores.
Edición de la fuente
Al editar el paso de origen, se le presentará un cuadro de diálogo ligeramente diferente al de la carga inicial. Dependiendo de cómo esté tratando actualmente el archivo (es decir, texto o CSV), se le presentará una pantalla con una variedad de menús desplegables.
El menú desplegable de Saltos de línea le permitirá seleccionar si desea aplicar los saltos de línea que están entre comillas o no.
Por ejemplo, si edita el ejemplo de "estructurado" proporcionado anteriormente, puede agregar un salto de línea.
Column 1 Column 2 Column 3
This is a string. 1 "ABC
123"
This is also a string. 2 "DEF456"
Si los Saltos de línea se establece en Ignorar saltos de línea entre comillas, se cargará como si no hubiera salto de línea (con un espacio adicional).
Si los Saltos de línea se establece en Aplicar todos los saltos de línea, cargará una fila adicional, siendo el contenido después de los saltos de línea el único contenido en esa fila (la salida exacta puede depender de la estructura del contenido del archivo).
El menú desplegable de Abrir archivo como le permitirá editar lo que desea cargar, el archivo como importante para la solución de problemas. Para los archivos estructurados que técnicamente no son CSV (como un archivo de valores separados por tabulaciones guardado como un archivo de texto), aún debe tener Abrir archivo como establecido en CSV. Esta configuración también determina qué menús desplegables están disponibles en el resto del cuadro de diálogo.
Texto / CSV por ejemplo
Texto / CSV Por Ejemplo en Power Query es una característica disponible de forma general en el espacio de trabajo de Power BI y Power Query Online. Cuando utilice el conector de texto/CSV, verá una opción para Extraer la Tabla Usando Ejemplos en la esquina inferior izquierda del navegador.
Cuando selecciones ese botón, irá a la página de Extraer Tabla Usando Ejemplos. En esta página, especifique los valores de salida de la muestra para los datos que desea extraer de su archivo de texto / CSV. Después de introducir la primera celda de la columna, se rellenan las demás celdas de la columna. Para que los datos se extraigan correctamente, es posible que deba ingresar más de una celda en la columna. Si algunas celdas de la columna son incorrectas, puede corregir la primera celda incorrecta y los datos se extraerán nuevamente. Verifique los datos en las primeras celdas para asegurarse de que los datos se hayan extraído correctamente.
Nota:
Le recomendamos que introduzca los ejemplos en orden en la columna. Una vez que la columna se haya completado correctamente, cree una nueva columna y comience a ingresar ejemplos en la nueva columna.
Una vez que haya terminado de construir esa tabla, puede seleccionar cargar o transformar los datos. Observe cómo las consultas resultantes contienen un desglose detallado de todos los pasos que se infirieron para la extracción de datos. Estos pasos son solo pasos de consulta regulares que puede personalizar según sea necesario.
Solución de problemas
Carga de archivos desde la Web
Si solicita archivos de texto / CSV de la web y también promociona encabezados, y está recuperando suficientes archivos por los cuales deba preocuparse por la posible limitación, debería considerar envolver a su Web.Contents
llame con Binary.Buffer()
. En este caso, el almacenamiento en el búfer del archivo antes de promocionar los encabezados hará que el archivo solo se solicite una vez.
Trabajar con archivos CSV grandes
Si se trata de archivos CSV grandes en el editor en línea de Power Query, es posible que reciba un error interno. Le sugerimos que primero trabaje con un archivo CSV de menor tamaño, aplique los pasos en el editor y, una vez que haya terminado, cambie la ruta al archivo CSV más grande. Este método le permite trabajar de manera más eficiente y reduce las posibilidades de encontrar un tiempo de espera en el editor en línea. No esperamos que encuentre este error durante el tiempo de actualización, ya que permitimos un tiempo de espera más largo.
Texto no estructurado que se interpreta como estructurado
En raras ocasiones, un documento que tiene números con coma similares en los párrafos puede interpretarse como un CSV. Si se produce este problema, edite el paso de la Fuente en el editor de Power Query y seleccione Texto en lugar de CSV en el Abrir Archivo Como selección desplegable.
Columnas en el espacio de trabajo de Power BI
Al importar un archivo CSV, el espacio de trabajo de Power BI genera columnas = x (donde x es el número de columnas en el archivo CSV durante la importación inicial) como un paso en el editor de Power Query. Si posteriormente agrega más columnas y se ha configurado el origen de datos para actualizarse, no se actualizarán las columnas que superen el número de columnas inicial x.
Error: Conexión cerrada por el host
Al cargar los archivos de texto/CSV desde una fuente web y también promocionar encabezados, a veces puede encontrar los siguientes errores: "An existing connection was forcibly closed by the remote host"
o "Received an unexpected EOF or 0 bytes from the transport stream."
Estos errores pueden ser causados por el host que emplea medidas de protección y cierra una conexión que puede estar temporalmente en pausa, por ejemplo, cuando espera en otra conexión del origen de datos una operación de unión o anexión. Para evitar estos errores, intente agregar un Binary.Buffer (recomendado) o llamada de Table.Buffer, que descargará el archivo, lo cargará en la memoria y cerrará inmediatamente la conexión. Esto debería evitar cualquier pausa durante la descarga y evitar que el host cierre la conexión a la fuerza antes de que se recupere el contenido.
El siguiente ejemplo ilustra esta solución alternativa. Este almacenamiento en el búfer debe realizarse antes de pasar la tabla resultante a Table.PromoteHeaders.
- Original:
Csv.Document(Web.Contents("https://.../MyFile.csv"))
- Con
Binary.Buffer
:
Csv.Document(Binary.Buffer(Web.Contents("https://.../MyFile.csv")))
- Con
Table.Buffer
:
Table.Buffer(Csv.Document(Web.Contents("https://.../MyFile.csv")))