×

Python Tutorial

Python Basics

Python I/O

Python Operators

Python Conditions & Controls

Python Functions

Python Strings

Python Modules

Python Lists

Python OOPs

Python Arrays

Python Dictionary

Python Sets

Python Tuples

Python Exception Handling

Python NumPy

Python Pandas

Python File Handling

Python WebSocket

Python GUI Programming

Python Image Processing

Python Miscellaneous

Python Practice

Python Programs

Creating a new column based on if-elif-else condition

Given a Pandas DataFrame, we have to create a new column based on if-elif-else condition. By Pranit Sharma Last updated : September 23, 2023

Pandas is a special tool that allows us to perform complex manipulations of data effectively and efficiently. Inside pandas, we mainly deal with a dataset in the form of DataFrame. DataFrames are 2-dimensional data structures in pandas. DataFrames consist of rows, columns, and the data.

If-elif-else condition is used whenever we check some condition, if the condition is satisfied, it performs whatever has defined inside it.

Problem statement

Given a Pandas DataFrame, we have to create a new column based on if-elif-else condition.

Creating a new column based on if-elif-else condition

To create a new column based on if and else conditions, we will first define a function to apply certain if and else conditions and finally we will create a new column with the values returned by the function.

Note

To work with pandas, we need to import pandas package first, below is the syntax:

import pandas as pd

Let us understand with the help of an example,

Python program to create a new column based on if-elif-else condition

# Importing pandas package
import pandas as pd

# Defining a function
def function(row):
        if row['One'] == row['Two']:
                val = 0
        elif row['One'] > row['Two']:
                val = 1
        else:
                val = -1
        return val

# Creating a dictionary
d = {
    'One':[1,2,3,4],
    'Two':[0.1,0.2,1,2]
}

# Creating dataframe
df = pd.DataFrame(d)

# Display DataFrame
print("Created DataFrame:\n",df,"\n")

# Calling the function with apply
df['New'] = df.apply(function,axis=1)

# Display modified DataFrame
print("Modified DataFrame:\n",df)

Output

The output of the above program is:

Created DataFrame:
    One  Two
0    1  0.1
1    2  0.2
2    3  1.0
3    4  2.0 

Modified DataFrame:
    One  Two  New
0    1  0.1    1
1    2  0.2    1
2    3  1.0    1
3    4  2.0    1

Python Pandas Programs »

Advertisement
Advertisement

Comments and Discussions!

Load comments ↻


Advertisement
Advertisement
Advertisement

Copyright © 2025 www.includehelp.com. All rights reserved.