Transformación de los datos mediante sustitución

Transforme los datos de una columna mediante una coincidencia de patrón simple o una expresión regular. Por ejemplo, en una columna Estado, puede cambiar CA por California.

Puede utilizar cualquier expresión de Perl Compatible Regular Expression (PCRE), a las que también se las conoce como expresiones regulares. Las transformaciones se aplican a cada fila aplicable en un juego de datos.
  1. En la página de inicio, abra un juego de datos o un libro de trabajo.
    • Pase el cursor por encima del juego de datos, haga clic en Acciones y, a continuación, seleccione Abrir. En Diagrama de datos o Diagrama de unión, haga clic con el botón derecho en un origen de datos y haga clic en Abrir para mostrar el editor de transformación.
    • Pase el cursor por encima del libro de trabajo que contiene el juego de datos, haga clic en Acciones, a continuación, seleccione Abrir y, por último, haga clic en Datos. En Diagrama de datos o Diagrama de unión, haga clic con el botón derecho en un origen de datos y haga clic en Abrir para mostrar el editor de transformación.

    Nota:

    Oracle Analytics muestra un diagrama de datos para juegos de datos de una sola tabla o un diagrama de unión para juegos de datos de varias tablas.
  2. Seleccione o pase el cursor sobre la columna de texto que desee transformar.
  3. Haga clic en Opciones en la base del mosaico de calidad y, a continuación, en Sustituir.
    Consejo: para sustituir más de un valor al mismo tiempo, utilice la opción Reemplazar lista de valores.
  4. En el editor de pasos Sustituir, especifique cómo desea que coincidan los valores. Por ejemplo:
    • Haga clic en Usar expresión regular para la coincidencia utilizando una expresión regular compleja (expresión regular).
    • Haga clic en Coincidir solo valores enteros para cambiar "male" a "M", pero no "female" a "feM".
  5. En el campo Cadena que sustituir y en el campo Nueva cadena, especifique el texto literal o las expresiones regulares que se van a buscar y sustituir (sensible a mayúsculas/minúsculas).
    Ejemplos:
    • Para cambiar "2553 Bolman Court" a "2553 #Bolman# #Court#", seleccione Usar expresión regular, introduzca ([A-Za-z]+) en el campo Cadena que sustituir e introduzca #$1# en el campo Nueva cadena.
    • Para cambiar "male" a "M", seleccione Coincidir solo valores enteros, introduzca male en el campo Cadena que sustituir e introduzca M en el campo Nueva cadena. Esto cambia "male" a "M", pero no cambiará "female" a "feM".

    Cuando complete ambos campos, se mostrará una vista previa de los datos transformados en el panel de vista previa. Ajuste las opciones de sustitución hasta que obtenga la transformación que desea en el panel de vista previa.
  6. Haga clic en Agregar paso.
    Oracle Analytics agrega un paso al panel Script de preparación.
  7. Para guardar los cambios de preparación de datos y aplicarlos a los datos, haga clic en Guardar.

Ejemplos de transformaciones de reemplazo mediante expresiones regulares

A continuación se incluyen algunos ejemplos del uso de expresiones regulares (regex) para transformar datos.

En estos ejemplos, en Expresión de búsqueda se muestra lo que se introduce en el campo Cadena que sustituir, y en Sustituir valor se muestra lo que se introduce en el campo Nueva cadena.

Tabla 3-1 Ejemplos de transformaciones de sustitución

Expresión de búsqueda Valor de sustitución Texto original Texto sustituido Notas
@([a-z]+)(?=\.[a-z]{3}) @example MichelePFalk@yahoo.com MichelePFalk@example.com En este ejemplo, se sustituyen los detalles del dominio en las direcciones de correo electrónico.
^Gray|Grey$ Silver

Grey

Gray

Graystone

Silver

Silver

Graystone

Los caracteres ^$ significan que solo se buscan coincidencias de cadena completa. La barra vertical es la expresión regular de OR, por lo que en este caso la expresión regular buscar "Gray" o "Grey" y lo sustituye por "Silver".

La cadena Graystone no se transforma porque la expresión regular busca únicamente coincidencias con el valor completo.

\d+ 9999

8398 Park Street

123 Oracle Parkway

9999 Park Street

9999 Oracle Parkway

Esta expresión regular busca un dígito" \d" o más "+" y los sustituye por "9999". La sustitución también se realiza si el texto original solo tiene tres dígitos.
([A-z]+)(\d+) $2

UA101654

US829383

101654

829383

Esta expresión regular busca una ocurrencia de letras consecutivas "[A-z]" o más "+" seguida de un dígito" \d" o más "+". Cada una de estas dos expresiones está delimitada por un paréntesis que captura dos grupos: el primero ([A-z]) y el segundo (\d+). Estos grupos se numeran automáticamente y se pueden utilizar a continuación en la sustitución utilizando el signo de dólar para el segundo grupo; por ejemplo, "$2".
([A-z]+)(\d+) Código postal: $2

UA101654

US829383

Código postal: 101654

Código postal: 829383

En este ejemplo se utiliza la misma expresión de coincidencia que en el anterior, excepto en que muestra cómo insertar su propio texto de sustitución en un grupo. El texto se puede insertar antes y después de un grupo de coincidencia recuperado.