Page tree

 

Support | BlogContact Us | 844.332.2821

 

Contents:

The cloud-based version of Trifacta Wrangler is now available! Read all about it, and register for your free account.

Contents:


Whether data is missing, mismatched, or simply wrong, you can use a variety of methods to replace values in one or more columns with literal values or pattern-based replacements. 

Replacement methods

In the Transformer page, you can use the following methods to replace values: 

MethodDescription
By selectionSelect a value in the data grid to prompt a series of suggestions on what to do with the data. Typically, replacement options are near the top of the suggestions.
By column menuFrom the menu to the right of the column, select Replace and a sub-menu item to begin configuring a replacement transformation. See Column Menus.
By Transformer toolbarAt the top of the data grid, click the Replace icon in the Transformer toolbar to begin configuring replacements. See Transformer Toolbar.
By Search panelIn the Search panel, enter replace to build a replacement transformation from scratch. See Search Panel.

Replace by selection

When you select data in the data grid, the replacement suggestions are pre-specified for you, including a number of variants available in the suggestion card. 

Notes:

  • Suggestions are typically conservative in the scope of their changes. Case-sensitive searches and matching of the first occurrence only are the default settings.
  • Order of listing of suggestions in a suggestion card:
    • Pattern-based replacements are listed first. These replacements use Trifacta patterns, instead of regular expressions. Regular expressions can be more difficult to control.
    • Literal value replacements are listed below the pattern-based ones. 

For more information, see Overview of Predictive Transformation.

Mask data

For privacy reasons or for sensitivity reasons, you may wish to mask sensitive data in one or more columns with fixed strings.

Drop whole column(s)

If you need to remove the data in an entire column, the easiest method is to drop it:

Tip: This method does not work if the column must exist in the target system.


Transformation Name Delete columns
Parameter: Columns customerName
Parameter: Action Delete selected columns

You can delete multiple discrete columns. You can also delete a range of columns as in the following:

Transformation Name Delete columns
Parameter: Columns colA~colD
Parameter: Action Delete selected columns

Masking all values

You can use a transformation like the following to replace all values in a column with a simple string. In this case, the value #REDACTED# has been inserted in place of all values in the column. 

NOTE: This replacement changes the data type of the column to String. If you must retain the original data type, the replacement value should be valid for the data type.


Transformation Name Edit column with formula
Parameter: Columns transactionValue
Parameter: Formula '#REDACTED#'

Partial masking of values

Suppose you wish to partially mask data in a column. In the following example, data for the AcctNum column is masked, except for the last four characters (digits):

Transformation Name Edit column with formula
Parameter: Columns AcctNum
Parameter: Formula value: merge(['XXXX',right(AcctNum, 4)], '')

Mask multiple columns based on data type

You can use the following type of transformation to hide data based on data type. In this example, the values in all columns with Social Security Number (SSN) are replaced with a masking value: XXX-XX-XXXX:

This method performs a simple text replacement of the data in the columns(s). After this transformation has been applied to the data, the source data is no longer available, unless you step back to a step before this one. For these kinds of operations, you may find it more secure to apply these kinds of masking operations to the source data in a single recipe and then make that output available to other users to use as an imported dataset.


Transformation Name Edit column with formula
Parameter: Columns *
Parameter: Formula if(isvalid($col, ['SSN']), 'XXX-XX-XXXX', $col)

Replace with values from another column

Replace whole column

You can do simple replacements of data from one column into another with transformations like the following. In this example, the values of colB are replaced with the values of colA with 0.15 added to them:

Transformation Name Edit with formula
Parameter: Columns colB
Parameter: Formula colA + 0.15

Replace partial values from another column

You can use the MERGE function to blend full or partial sets of columns into a new column. In the following example, the newBrandId value is concatenated with the product code in the ProdId column to create a new product identifier:

Transformation Name Edit with formula
Parameter: Columns ProdId
Parameter: Formula merge([newBrandId, right(prodId, 5)], '-')

Replace between positions

You can perform replacements based on character positions that you specify as part of the transformation.

  • The beginning character value is specified as a number from 0, which starts on the left.
  • The ending character value must be equal to or greater than the beginning character value.

In the following example, the Whse_Name column values are prepended with the value old-

Transformation Name Replace by position
Parameter: Column Whse_name
Parameter: Start position 0
Parameter: End position 0
Parameter: Replace with old-

Search and replace text or pattern

You can search and replace content in your dataset based on literals or patterns. In the following example, the value ##CLT_NAME## is replaced with Our Customer, Inc. across all columns in the dataset:

Transformation Name Replace text or patterns
Parameter: Column *
Parameter: Find '##CLT_NAME##'
Parameter: Replace with 'Our Customer, Inc.'
Parameter: Match all occurrences true

Replace missing values

Replace missing with zeroes

For numeric data, you may choose to replace values that are missing in a column with zeros. The following transformation sets missing values in the Qty and DiscountPct columns of Decimal data type to 0:

Transformation Name Edit column with formula
Parameter: Columns Qty,DiscountPct
Parameter: Formula if(ismissing([$col]), '0', $col)

Replace missing with average values

One of the problems with the above method is that any statistical computations applied to the column are now affected by the zeroing of the missing values. For example, the computation for the AVERAGE function does not factor in missing values into the count of rows, which result in skewing of values for your purposes. 

The following example creates a new column from the DiscountPct column in which empty values are inserted as the average of the values in the source column:

Transformation Name New formula
Parameter: Formula type Single row formula
Parameter: Formula if(ismissing([DiscountPct]), average(DiscountPct), DiscountPct)
Parameter: New column name DiscountPct-0toAVG

In this manner, the new column can be used for some statistical modeling, while preserving the original values in the original column.

Rename columns

For more information, see Rename Columns.

Your Rating: Results: PatheticBadOKGoodOutstanding! 2 rates

This page has no comments.