У меня есть DataFrame, который имеет 2 столбца:
part content
0 'ok' 'A'
1 'ok' 'B'
2 '' 'C'
3 '' 'D'
4 '' 'E'
5 '' 'F'
6 'ok' 'G'
7 'ok' 'H'
8 '' 'I'
9 'ok' 'J'
10 '' 'K'
11 'ok' 'L'
12 '' 'M'
13 'ok' 'N'
14 '' 'O'
15 '' 'P'
Мне нужно создать новые столбцы:
count
- счетчик элементов в одной группе if part == 'ok'
затем является первым элементом группы if part == ''
, затем он является частью группы выше
concat
- объединение элементов водна группа take
- последняя строка в группе, одна со всеми элементами
Это должно выглядеть так:
part content count concat take
0 'ok' 'A' 1 'A' True
1 'ok' 'B' 1 'B' False
2 '' 'C' 2 'BC' False
3 '' 'D' 3 'BCD' False
4 '' 'E' 4 'BCDE' False
5 '' 'F' 5 'BCDEF' True
6 'ok' 'G' 1 'G' True
7 'ok' 'H' 1 'H' False
8 '' 'I' 2 'HI' True
9 'ok' 'J' 1 'J' False
10 '' 'K' 2 'JK' True
11 'ok' 'L' 1 'L' False
12 '' 'M' 2 'LM' True
13 'ok' 'N' 1 'N' False
14 '' 'O' 2 'NO' False
15 '' 'P' 3 'NOP' True
Тогда я буду фильтроватьон должен включать только полные строки.
concat
0 'A'
1 'BCDEF'
2 'G'
3 'HI'
4 'JK'
5 'LM'
6 'NOP'
Мне нужна помощь с первой частью - как создать столбцы с счетчиком запусков, конкатенацией и True / False для последней строки в группе.
Также - данные в вышеприведенном примере являются анонимными:
- столбец
part
имеет 11 различных элементов, чтобы классифицировать, к какой части контента это относится. Не только ok
или ''
- столбец
content
содержит одну строку документа, который я анализирую. Это строка из 0-400 символов.