{{ transformations:RemoveEmptyRowsAction.png}} ====== REMOVE EMPTY ROWS ====== Category: Transform / Advanced\\ \\ =====Description===== This action removes empty rows or rows that //appear// empty, and have no meaningful information (e.g. whitespace values). For convenience, certain columns can be ignored if they have non-empty values which are not necessary.\\ \\ =====Use cases===== The action can be convenient for removing empty rows without using a filter. When empty rows are removed using a filter applied to 1 or several columns there is always a risk that important data may reside in columns not included in the filters and thus accidentally removed. The //Remove empty rows// action reduces this risk and guarantees that only rows without meaningful information will be removed.\\ \\ =====Action settings===== ====Remove empty rows where settings==== ^Setting^Description^ |All values are empty values|Removes columns that only contain empty values (nulls)| |All values are empty or whitespace|Removes columns that contain either empty or whitespace values (e.g. values with only spaces, line breaks, or tabs but no visible characters).| \\ ====Remove empty rows settings==== ^Setting^Description^ |Top|When checked, all empty rows from the start of the dataset (row 1) to the first non-empty row are removed.| |Between the first and last non-empty row|When checked, all empty rows in the middle of the dataset - between the first non-empty row, and the last non-empty row - are removed .| |Bottom|When checked, all empty rows from the end of the dataset (last row) up to the last non-empty row are removed.| \\ ====Ignore columns (optional) settings==== Select from the list which columns' values are ignored when determining when to remove the row or not. In other words, all values within the selected column(s) will be treated as //empty//.\\ \\ =====Remarks===== When using the //Ignore columns// option, note that if columns contain values, but the rest of the columns are columns are blank (for any given record), the rows will be removed and data in these columns will be removed. Use this setting when columns contain static values, or perhaps annotations, that are not relevant if the rest of the rows' data is blank.\\ \\ =====Examples===== **Example:** Remove empty rows, ignore column [Note].\\ **Source dataset:** ^ Product name ^ Qty ^ Price ^ Note ^ | Big thing | 1| 1000| | | | | |No data here | | Medium thing | 10| 100| | | Small thing | 100| 10| | \\ **Action parameters:** > //Remove rows where// can be either setting in this example. > "Between the first and last non-empty rows" is "checked". > "Ignore columns": "Note" is selected. \\ **Result table:** ^ Product name ^ Qty ^ Price ^ Note ^ | Big thing | 1| 1000| | | Medium thing | 10| 100| | | Small thing | 100| 10| | \\ ====Community examples==== * [[https://community.easymorph.com/t//1499/2|Data cleaning for data spread over multiple rows and columns]] ([[https://community.easymorph.com/uploads/short-url/kgmVTEHcl0CE7Yep5uzuGW1HLKc.morph|Project]]; Module: //Main//; Group: //Tab 1//; Table: //Table 1(2)//;\\ Action position: //3//) * [[https://community.easymorph.com/t//2053/9|Converting Text to HTML]] ([[https://community.easymorph.com/uploads/short-url/3acTPpAroyvp3DsTPNTOZQIqaHO.morph|Project]]; Module: //Main//; Group: //Tab 1//; Table: //Table 1//; Action position: //2//) * [[https://community.easymorph.com/t//2389/1|How to query Salesforce using EasyMorph 4.6]] ([[https://community.easymorph.com/uploads/short-url/23kUESqob17X4cG2jbjXPaM8477.morph|Project]]; Module: //Query Salesforce//; Group: //Group 1//; Table: //Iterate & Cleanup Salesforce collection//; Action position: //10//) \\ =====See also===== * [[transformations:removeemptycolumns|Remove empty columns]]