--- title: "Create a data pipeline" url: https://docs.catalyst.zoho.com/en/tutorials/cancer-detection/create-data-pipeline/ description: "Create and configure a powerful ML pipeline that can be used to predict the chances of being affected by breast cancer using the Catalyst QuickML service." last_updated: 2026-10-01T07:03:46Z service: All Services type: tutorial related_links: - name: "Data Cleaning" url: /en/quickml/help/data-preprocessing/data-cleaning - name: "Data Transformation" url: /en/quickml/help/data-preprocessing/data-transformation - name: "Data Profiler and Viewer" url: /en/quickml/help/data-profiler-and-viewer/ --- # Create Data Pipeline Now that we have uploaded the required datasets, we will proceed with creating a **[data pipeline](https://docs.catalyst.zoho.com/en/quickml/help/pipeline-builder-interface/walkthrough/#pipeline)**. 1. In the left panel, navigate to *Datasets*, and click the **Cancer_detection_A** dataset. The data pipeline details page will be displayed. ![cancer-detection-8.webp](https://catalyst-docs-development.zohostratus.in/images/tutorials/cancer-detection/cancer-detection-8.webp) 2. Click **Create Pipeline** from the top-right corner of the page. ![cancer-detection-9.webp](https://catalyst-docs-development.zohostratus.in/images/tutorials/cancer-detection/cancer-detection-9.webp) 3. In the *Create Pipeline* pop-up window, enter the name of the pipeline as “Pipeline_A” , and click **Create Pipeline**. ![cancer-detection-10.webp](https://catalyst-docs-development.zohostratus.in/images/tutorials/cancer-detection/cancer-detection-10.webp) The **[Pipeline Builder interface](https://docs.catalyst.zoho.com/en/quickml/help/pipeline-builder-interface/walkthrough/#pipeline-builder-interface-1)** will be opened, as shown in the screenshot below. ![cancer-detection-11.webp](https://catalyst-docs-development.zohostratus.in/images/tutorials/cancer-detection/cancer-detection-11.webp) We will be performing the following set of data preprocessing operations in order to clean, refine, and transform the datasets, then execute the data pipeline. Each of these operations involves individual **[data nodes](https://docs.catalyst.zoho.com/en/quickml/help/data-preprocessing/data-cleaning/)** that are used to construct the pipeline. ## Combine Datasets Because we have two datasets, we need to merge them before starting the training process. Please follow the steps below to merge the datasets: 1. In the *Operations* menu, expand the **Data Extraction** component. 2. Drag and drop the **Add Dataset** node into the Pipeline Builder. 3. Create the custom name for the node in the **Custom Name** field in the right panel. Here, we have created it as Cancer dataset 2. In the Add Dataset section on the right panel, choose **Cancer_detection_B** from Select Dataset field to merge the Cancer_detection_B dataset with the Cancer_detection_A dataset and click **Save**. ![cancer-detection-12.webp](https://catalyst-docs-development.zohostratus.in/images/tutorials/cancer-detection/cancer-detection-12.webp) 4. Open the Data Transformation component from the *Operations* menu, then drag and drop the **Union** node into the Pipeline Builder. 5. Make a connection between the nodes by joining the Source and Add Dataset node to the Union node. 6. In the *Union* section on the right panel, choose the **Drop Duplicate Records** checkbox and click **Save**. ![cancer-detection-13.webp](https://catalyst-docs-development.zohostratus.in/images/tutorials/cancer-detection/cancer-detection-13.webp) ## Select Fields for Model Training After combining the datasets, we will need to select the required fields in the merged dataset to train them further. 1. Open the **Data Cleaning** component from the *Operations* menu. 2. Drag and drop the **[Select/Drop](https://docs.catalyst.zoho.com/en/quickml/help/data-preprocessing/data-cleaning#select-or-drop)** node in the Pipeline Builder and make a connection with the Union node. 3. In the *Select/Drop* section on the right panel, select the “patient_id”, “patient_name” and “_c33” columns, choose the operation “Drop” to drop the columns from the merged dataset, and click **Save**. **Note**: In our case, these columns are generic, serving no purpose to be trained further, so we are removing them. ![cancer-detection-14.webp](https://catalyst-docs-development.zohostratus.in/images/tutorials/cancer-detection/cancer-detection-14.webp) ## Data Type Conversion For the mismatched datatypes in the columns of the datasets, we will be using the **[Type conversion node](https://docs.catalyst.zoho.com/en/quickml/help/data-preprocessing/data-transformation/#type-conversion)** to convert the data into the appropriate types. You can view the columns and their datatypes in the **Preview** tab of the Pipeline details page. In our dataset, the “**texture_mean**”, "**radius_mean**" and "**perimeter_mean**" column contains decimal values, but it is stored as type **String**. Please make sure to follow the below listed steps to carry out the conversion process: 1. Open the **Data Transformation** component from the *Operations* menu. 2. Drag and drop the **Type Conversion** node into the Pipeline Builder and connect with the Select/Drop node. 3. In the Type Conversion section on the right panel, choose the column as **texture_mean**, and select the Convert To Type input as **Decimal(16)** from the drop-down menu. Choose between **Throw** and **Nullify** in case of any errors. 4. Likewise, click the **+ Add button** and select the **radius_mean** and **perimeter_mean** columns, choose **Decimal(16)** as Convert to Type, and click **Save**. ![cancer-detection-15.webp](https://catalyst-docs-development.zohostratus.in/images/tutorials/cancer-detection/cancer-detection-15.webp) ## Handle Missing Values As a part of data preprocessing, we will need to check if there are missing values in any of the columns in the datasets and fill them. We will be using the Fill Columns node for executing this operation. 1. Open the **Data Cleaning** component from the *Operations* menu. 2. Drag and drop the **Fill Columns** node into the Pipeline Builder and connect it with the Type Conversion node. 3. In the *Fill Columns* section on the right panel, enable **Show only the columns with missing values** to select the columns that have empty records. 4. Select the columns you want to be filled with a custom value. Select **concavity_se**, and **area_worst** and choose the Fill with field as **Mean** and click **Save**. This fills the empty values in the column data with the mean value of the particular columns. ![cancer-detection-16.webp](https://catalyst-docs-development.zohostratus.in/images/tutorials/cancer-detection/cancer-detection-16.webp) Finally, make a connection between the **Fill Columns** and the **Destination** nodes and click **Execute**. ![cancer-detection-17.webp](https://catalyst-docs-development.zohostratus.in/images/tutorials/cancer-detection/cancer-detection-17.webp) The data pipeline will start execution, and the status will be displayed on the Pipeline Details page. Once the pipeline has completed execution, the status will change to “Success”. ![cancer-detection-18.webp](https://catalyst-docs-development.zohostratus.in/images/tutorials/cancer-detection/cancer-detection-18.webp) Click **Execution Stats** to view more details about each stage of the execution in detail. ![cancer-detection-19.webp](https://catalyst-docs-development.zohostratus.in/images/tutorials/cancer-detection/cancer-detection-19.webp) The dataset to develop the ML model has been prepared. We will be discussing more about the ML pipeline creation in the next section. > **Note :** The data pipeline can be reused to create multiple ML experiments for varied use cases within your Catalyst project.