Как получить индекс максимального количества требуемой строки в столбце списка кадра данных поляров?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как получить индекс максимального количества требуемой строки в столбце списка кадра данных поляров?

Сообщение Anonymous »

У меня есть фрейм данных Polars:

Код: Выделить всё

df = pl.DataFrame({'doc_id':[
['83;45;32;65;13','7;8;9'],
['9;4;5','4;2;7;3;5;8;10;11'],
['1000;2000','76;34;100001;7474;2924'],
['100;200','200;100'],
['3;4;6;7;10;11','1;2;3;4;5']
]})
каждый список состоит из идентификаторов документов, разделенных точкой с запятой. Если какой-либо элемент списка имеет более высокую точку с запятой, необходимо найти его индекс, создать новый столбец как len_idx_at и заполнить индексным номером. .
Например:

Код: Выделить всё

['83;45;32;65;13','7;8;9']
Этот список состоит из двух элементов, в первом элементе около 4 точек с запятой, следовательно, в нем 5 документов, аналогично во втором элементе около 2 точек с запятой, а это означает, что у него 3 документа. .
Здесь мы должны рассмотреть индекс элемента с наибольшим количеством документов в приведенном выше случае - это будет индекс 0, поскольку он имеет 4 точки с запятой.
ожидаемый результат:

Код: Выделить всё

shape: (5, 2)
┌─────────────────────────────────┬────────────┐
│ doc_id                          ┆ len_idx_at │
│ ---                             ┆ ---        │
│ list[str]                       ┆ i32        │
╞═════════════════════════════════╪════════════╡
│ ["83;45;32;65;13", "7;8;9"]     ┆ 0          │
│ ["9;4;5", "4;2;7;3;5;8;10;11"]  ┆ 1          │
│ ["1000;2000", "76;34;100001;74… ┆ 1          │
│ ["100;200", "200;100"]          ┆ 0          │
│ ["3;4;6;7;10;11", "1;2;3;4;5"]  ┆ 0          │
└─────────────────────────────────┴────────────┘
Если все элементы в списке имеют одинаковое количество точек с запятой, предпочтительным будет нулевой индекс, как показано в выводе выше.

Подробнее здесь: https://stackoverflow.com/questions/742 ... lumn-of-po
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»