alex_bn_lee

导航

[1074] Using an if...else statement within the apply function in pandas

Here's an example of using an if...else statement within the apply function in pandas:

Example

  1. Import Pandas:

    import pandas as pd
  2. Create a Sample DataFrame:

    data = {
        'A': [1, 2, 3, 4, 5],
        'B': [10, 20, 30, 40, 50]
    }
    df = pd.DataFrame(data)
  3. Define a Function with if...else:

    def categorize(row):
        if row['A'] > 3:
            return 'High'
        elif row['A'] > 1:
            return 'Medium'
        else:
            return 'Low'
  4. Apply the Function to the DataFrame:

    df['Category'] = df.apply(categorize, axis=1)
  5. Print the Result:

    print(df)

Explanation

  1. Importing Pandas: First, we import the pandas library.

  2. Creating a Sample DataFrame: We create a sample DataFrame df with columns 'A' and 'B'.

  3. Defining a Function with if...else: The function categorize takes a row as input and uses if...else statements to categorize the values in column 'A' as 'High', 'Medium', or 'Low'.

  4. Applying the Function: We use the apply method to apply the categorize function to each row of the DataFrame, specifying axis=1 to indicate that the function should be applied row-wise. The results are stored in a new column 'Category'.

  5. Printing the Result: Finally, we print the DataFrame to see the new 'Category' column.

Output

After running the code, your DataFrame will look like this:

   A   B Category
0  1  10      Low
1  2  20   Medium
2  3  30   Medium
3  4  40     High
4  5  50     High

This example demonstrates how to use if...else within the apply function to categorize data based on specific conditions. Give it a try, and let me know if you need any further assistance!

posted on 2024-11-06 06:55  McDelfino  阅读(5)  评论(0编辑  收藏  举报