Eliminar espacios en blanco de las columnas pero mantener las relaciones

Un usuario Pregunto ✅

Anónimo

Hola. Tengo lo que parece un problema simple, pero tiene múltiples dimensiones.

Problema: estoy importando un archivo .csv que contiene dos columnas; 1. Personas y 2. Proyectos pero hay registros en blanco en ambas columnas. Por ejemplo, la columna Personas tiene una sola entrada para una Persona, pero luego hay uno o más registros en blanco hasta que hay un nuevo proyecto con el que la persona anterior no tiene asociación. En ese momento, hay una nueva Persona identificada y vuelve a estar en blanco hasta que la columna Proyecto tiene un valor que no se aplica a esa persona. Desafortunadamente, no puedo simplemente eliminar los espacios en blanco sin afectar las otras columnas (EXCEPTO en el caso en que el registro de personas esté completo y el registro del proyecto esté en blanco; esa fila se puede eliminar sin impacto siempre que no pierda el registro de la persona). nombre para los siguientes Proyectos Cualquier ayuda o sugerencia será muy apreciada.

Por cierto, creé una imagen de la tabla, que podría ayudar a visualizar el problema, pero no pude aplicarla a esta publicación. Puedo enviarlo por correo electrónico a quien quiera.

Gracias de antemano por cualquier ayuda.

zoloturu

En respuesta a Anónimo

Hola @Anonimo,

Para hacer lo que necesitas:

  1. Haz clic derecho en el encabezado Personas
  2. Seleccionar menú allí Reemplazar valores, donde salir Valor a encontrar vacío, Reemplazar con ingrese la palabra nulo
  3. Repita el paso 1.
  4. Seleccione menú allí Rellenar -> Abajo
  5. Abrir un filtro cerca del encabezado Proyecto
  6. Deseleccionar (blanco) valoreseliminar espacios en blancoeliminar espacios en blanco

    Y aquí está el script M para su referencia. Ingresé manualmente sus valores para poder mostrar mejor el resultado. He formateado los cambios necesarios en negrita.

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCs/PT89MVdJRUorViVYC0o4whhOM4QxjuIAZIUWlydmpRUhaXMEM38SiSmzmQGQDEkuQJN2gOtJTEpFE4Ra5K8XGAgA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [People = _t, Project = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"People", type text}, {"Project", type text}}),


    #"Replaced Value" = Table.ReplaceValue(#"Changed Type","",null,Replacer.ReplaceValue,{"People"}),
    #"Filled Down" = Table.FillDown(#"Replaced Value",{"People"}),
    #"Filtered Rows" = Table.SelectRows(#"Filled Down", each ([Project] <> ""))
in
    #"Filtered Rows"

Anónimo

Aquí está la imagen que quería mostrar. Esperemos que esto aclare algunos de los detalles.

Capturar.JPG

zoloturu

En respuesta a Anónimo

Hola @Anonimo,

Para hacer lo que necesitas:

  1. Haz clic derecho en el encabezado Personas
  2. Seleccionar menú allí Reemplazar valores, donde salir Valor a encontrar vacío, Reemplazar con ingrese la palabra nulo
  3. Repita el paso 1.
  4. Seleccione menú allí Rellenar -> Abajo
  5. Abrir un filtro cerca del encabezado Proyecto
  6. Deseleccionar (blanco) valoreseliminar espacios en blancoeliminar espacios en blanco

    Y aquí está el script M para su referencia. Ingresé manualmente sus valores para poder mostrar mejor el resultado. He formateado los cambios necesarios en negrita.

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCs/PT89MVdJRUorViVYC0o4whhOM4QxjuIAZIUWlydmpRUhaXMEM38SiSmzmQGQDEkuQJN2gOtJTEpFE4Ra5K8XGAgA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [People = _t, Project = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"People", type text}, {"Project", type text}}),


    #"Replaced Value" = Table.ReplaceValue(#"Changed Type","",null,Replacer.ReplaceValue,{"People"}),
    #"Filled Down" = Table.FillDown(#"Replaced Value",{"People"}),
    #"Filtered Rows" = Table.SelectRows(#"Filled Down", each ([Project] <> ""))
in
    #"Filtered Rows"

Anónimo

En respuesta a zoloturu

Hola Zoloturu. Gracias por la ayuda. ¡Esto funciona perfecto y es mucho más fácil de lo que pensé que sería! Agradezco las imágenes. Esos fueron de gran ayuda. -Bingo

zoloturu

En respuesta a Anónimo

@Anónimo, de nada.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *