У меня есть следующий набор данных:
column1
HL111
PG3939HL11
HL339PG
RC--HL--PG
Я пытаюсь написать функцию, которая выполняет следующее:
- Цикл по каждой строке столбца1
- Потяните только алфавит и поместите в массив
- Если в массиве есть "HL", удалите его из массива, ЕСЛИ НЕ HL является единственным словом в массиве.
- Возьмитепервое слово в массиве и вывод результатов.
Итак, для приведенного выше примера мой массив (шаг2) будет выглядеть так:
[HL]
[PG,HL]
[HL,PG]
[RC,HL,PG]
и мой желаемый конечный результат (шаг4)) будет выглядеть так:
desired_column
HL
PG
PG
RC
У меня есть код для шага 2, и он, кажется, работает нормально
df['array_column'] = (df.column1.str.extractall('([A-Z]+)')
.unstack()
.values.tolist())
Но я не знаю, как добраться отсюда домой окончательный вывод (шаг4).