У меня есть таблица с 10+ столбцами. Допустим, столбец_1 — это имя, и если имя заканчивается на букву «а», я хочу создать правило, которое заполнит мой новый столбец значением «Женщина». В других случаях это будет «Мужской». Я хочу, чтобы этот новый столбец был сразу после столбца 1, поэтому я получаю что-то вроде:
дф1:
Вы можете использовать insert
:
df.insert(1, 'Name', np.where(df['col1'].str.endswith('a'), 'Female', 'Male'))
Или, если вы не знаете позицию «col1»:
pos = df.columns.get_loc('col1')+1
df.insert(pos, 'Name', np.where(df['col1'].str.endswith('a'), 'Female', 'Male'))
выход:
col1 Name col2
0 Adam Male 0
1 Elena Female 1
2 Jack Male 2
3 Jessica Female 3
используемый ввод:
df = pd.DataFrame({'col1': ['Adam', 'Elena', 'Jack', 'Jessica'], 'col2': range(4)})