Ask Your Question
1

What method can I use to develop a function that will substitute a string column with another, depending on a .startswith() condition?

asked 2023-05-30 07:54:16 +0000

plato gravatar image

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
0

answered 2023-05-30 08:18:02 +0000

ladyg gravatar image

You can use a combination of the .apply() and .startswith() methods to achieve this. Here's an example:

import pandas as pd

# create sample dataframe
df = pd.DataFrame({'fruit': ['apple', 'banana', 'kiwi', 'orange', 'pear'], 
                   'color': ['red', 'yellow', 'brown', 'orange', 'green']})

# define function to substitute strings
def replace_fruit_color(row):
    if row['fruit'].startswith('a'):
        return 'red'
    elif row['fruit'].startswith('b'):
        return 'yellow'
    else:
        return row['color']

# apply function to 'color' column and create new column with results
df['new_color'] = df.apply(replace_fruit_color, axis=1)

# display updated dataframe
print(df)

This will output:

    fruit   color new_color
0   apple     red       red
1  banana  yellow    yellow
2    kiwi   brown     brown
3  orange  orange    orange
4    pear   green     green

In this example, the replace_fruit_color function checks each row in the dataframe and returns a new string value for the color column based on whether the fruit column starts with a certain letter. The apply method applies this function to each row, and the results are stored in a new new_color column.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account. This space is reserved only for answers. If you would like to engage in a discussion, please instead post a comment under the question or an answer that you would like to discuss

Add Answer


Question Tools

Stats

Asked: 2023-05-30 07:54:16 +0000

Seen: 1 times

Last updated: May 30 '23