Попробуйте вот это. Это может быть немного быстрее.
import pandas as pd
data = {'type': ['A3', 'A3', 'A3', 'A3', 'A1', 'A1', 'A1', 'A1', 'A2', 'A2'],
'state1': ['FL', 'MI', 'NJ', 'TX', 'CT', 'MA', 'NH', 'FL', 'CA', 'OR'],
'state2': ['NY', 'MS', 'NH', 'CT', 'FL', 'MI', 'NJ', 'TX', 'CA', 'OR']
}
df = pd.DataFrame(data)
df['state_banned'] = 'Other'
mask = (df['type'] == 'A3') & (df['state1'].isin(['FL', 'MI', 'NJ', 'TX']))
df['state_banned'][mask] = df['state1'][mask]
mask = (df['type'] != 'A3') & (df['state2'].isin(['FL', 'MI', 'NJ', 'TX']))
df['state_banned'][mask] = df['state2'][mask]