[英]Replace value in column based on multiple conditions in Pandas
我有這個 dataframe
df = pd.DataFrame.from_dict(
{
'Name': ['Jane', 'Melissa', 'John', 'Matt'],
'Age': [23, 45, 35, 64],
'Birth City': ['London', 'Paris', 'Toronto', 'Atlanta'],
'Gender': ['F', 'F', 'M', 'M']
}
)
當名字是Melissa
或John
時,我想將Gender
替換為X
。 我該怎么做?
這是我的解決方案:
df.loc[((df['Name'] == 'Melissa') | (df['Name'] == 'John')), 'Gender'] = 'X'
和 output
Name Age Birth City Gender
0 Jane 23 London F
1 Melissa 45 Paris X
2 John 35 Toronto X
3 Matt 64 Atlanta M
一個可能的解決方案:
df['Gender'] = df['Gender'].mask(df['Name'].isin(['Melissa', 'John']), other='X')
Output:
Name Age Birth City Gender
0 Jane 23 London F
1 Melissa 45 Paris X
2 John 35 Toronto X
3 Matt 64 Atlanta M
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.