Data Profiling: Step by Step connection analysis using Talend

In continuation to my previous post, in this post we will look at some sample data and use Talend Open Studio for Data Quality for Data profiling. You can also refer to this link as an alternative tutorial. In this blog post we will evaluate how to do Connection analysis which will help us to the following key parameters in a database:

  • How many tables exists?
  • How many rows exists?
  • How many views exists?
  • How many rows exists in each table etc.,?

Why do we need to do Connection Analysis:

The connection analysis helps you to get a overview of the Database connection in the context quickly.

Creating a DB connection

Step 1:

Step 2: Installing mysql drivers

Step 3: Checking the connectivity

Starting Connection Analysis:

Step 1: Create the Database Structure Overview as given in the steps.

Step 2: Select the DB Connections

Step 3: Select the tables you need to analyze on.

Step 4: Now run the ClassicModel Connection Analysis

Step 5: Execution status after run

Step 6: Now it results in data analysis with statistical information such as 3864 rows and 8 tables.

Advertisements

Step by Step Correlation Matrix using Rapid miner on the Fuel Consumption Data of cars in Canada

Correlation Matrix will help you understand the co-relation between various variables. It is a Symmetrical Matrix where ij element in the matrix is equal to the correlation co-efficient between the variable i and j. The diagonal element are always equivalent to 1. (Thanks http://www.statistics.com/glossary&term_id=310).

Purpose of using Correlation Matrix:

  • To identify the outliers
  • To identify the co-linearity exists between the variables.
  • Used for regression analysis

Simple understanding:

Correlation is a number between +1 and -1 that helps you to measure the relationship between two variables which are being linear(e.g., Higher the income, Higher the Tax) where correlation is +1 or positive, on the other hand (e.g., every item sold will reduce your inventory) where the correlation is -1 or Negative. If it’s near to zero it means that co-relation doesn’t exists (e.g., Average temperature in summer, Average sales of news magazines) which would reflect linear independence between variables. Also its very important to understand the correlation would not affect by the scale of the variables and how its measured.

About the Dataset:

Source: Thanks to Fuel Consumption Ratings from data.gc.ca , Link: http://data.gc.ca/data/en/dataset/98f1a129-f628-4ce4-b24d-6f16bf24dd64

The dataset is which I have used is a refined one of the data from the above link. The dataset I use in this post has the following attributes:

  • Make – Car Make
  • Class – Referred as given below

COMPACT

C

SPECIAL PURPOSE

SP

MID-SIZE

M

SUBCOMPACT

S

TWO-SEATER

T

STATION WAGON

W

FULL-SIZE

L

PICKUP TRUCK

PU

LARGE VAN

F

MINIVAN

V

  • Engine
  • Transmission
  • Fuel Type
  • City (Fuel Consumption during City drive in mi/gallons)
  • Hwy (Fuel Consumption during Highway drive in mi/gallons)

Tool Usage:

In this post we will use Rapid Miner tool to understand the Fuel Consumption of cars in Canada for the Year 2013 data related variables.

Steps to evaluate correlation Matrix:

Step 1: Open Rapid Miner which you can download from rapidminer.com

 

Step 2: Import the data from the local drive. In my case I have kept it in excel format, for that you have to click “Import Excel Sheet…” under the Repository Tab. Also you can look at a repository named “SivaRepository” which I have created previously.

Step 3: After you import and click Finish you will something like this as given below, also you can see the log to identify if there are any errors, I have given the name for the dataset as CanadaCarsFuelConsumption2013.


Step 4: Now we will do the correlation matrix from this data. Select the correlation matrix operator from the Operators under Modeling/Correlation and Dependency Computation Section.

Step 5: Now also drag the CanadaCarsFuelConsumption2013 dataset to the process area and connect the out to the exa of the CorrelationMatrix Operator. Then connect the mat output to the process res for the output.

Step 6: Now let’s run the process to the see the results.


Result:

Based on this outcome we can realize that City, Hwy and Fuel related variables have a close correlation that other parameters as the relationship is very positive when compared to other variables. We can also look at the pair wise tables to have better understanding.

Ranking using R: Step by step

Ranking using R: Step by Step

In this blog we are going to see how we can rank the students in a class based on their total scores using R.

Let’s have the worksheet with the details of the all the students with their marks and total. We will name the worksheet as DataSourceMarks.xls

  1. Next step would be import the marks to the R environment please refer to my earlier blog on steps to import the excel data using R.

  2. First let’s try to get what is the maximum total score in this table. We can do that by using the tablename accompanied by $ with the column name. So for getting the maximum of the total score we can use the following command.

    >max(studentsdata$TotalScores)

    437

  3. Before we rank the data we will try to order by the data by TotalScores and Name by using the following command in the ascending order:

    > studentsdata[with(studentsdata,order(TotalScores,Name)),]

  4. We can rank the same in descending order using the minus “-” symbol and changing the command as follows:

  5. Next we will store this ordered data into OrderedScores objects for further ranking using the following command:

    > OrderedScores=studentsdata[with(studentsdata,order(-TotalScores,Name)),]

  6. Next we will create new object with rank column added to this table after the ranking being done on the orderedscores using the following command.

    >RankedScores=within(OrderedScores,Rank=ave(TotalScores,Name,FUN=function(x)rev(order(x))))

>RankedScores

Now we have got the ranked data where in the person named Prabhakar with the total score of 437 is ranked number 1

Things we have learnt:

  1. To access the column we need to use the tableobject$columnname
  2. To use the Max function to get the maximum value in a vector.
  3. We can order the data using order function.
  4. We can rank the ordered data using the order function.