DropNull

Overview #

The DropNull process will drop the row which has null value or meet certain number of null occurrences.

Let look at an example:

$this->src('db')
->query("select * from customers")
->pipe(new DropNull())
->pipe($this->dataStore('clean_data'));

Above is simplest example of using DropNull process. All the row which has null value will be dropped. As a result, return data will be those customers with full information.

Target a certain columns only #

Sometime you only drop the row if some certain columns has null values:

->pipe(new DropNull(array(
    "targetColumns"=>array("salary","tax")
)))

Exclude some columns #

If you want to target all columns except some because it is not important, you do:

->pipe(new DropNull(array(
    "excludedColumns"=>array("address","city")
)))

Target specific type of columns #

For example, You can target number columns only, if any of those columns has null value, the row will be dropped:

->pipe(new DropNull(array(
    "targetColumnType"=>"number"
)))

You can target to other column types which are string,date,datetime,time

Threshold #

For example, if data row contains more than 2 null values, drop the row:

->pipe(new DropNull(array(
    "thresh"=>3,
)))

Targeted value #

What if you do not want to drop null value but the 0 value. The missing data to you is the 0 value, you can do

->pipe(new DropNull(array(
    "targetValue"=>0,
)))

Of course, you can set any target values regardless number type or string type. The default value of targetValue is null.

Strictly Null #

By default the the null could be empty string or 0 value. To enable strict comparison of both value and type, you set the following:

->pipe(new DropNull(array(
    "strict"=>true,
)))

Get started with KoolReport

KoolReport will help you to construct good php data report by gathering your data from multiple sources, transforming them into valuable insights, and finally visualizing them in stunning charts and graphs.