Объединение списков с одинаковыми элементами, но в разном порядке в серии pandas, в один уникальный списокPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Объединение списков с одинаковыми элементами, но в разном порядке в серии pandas, в один уникальный список

Сообщение Anonymous »

Рассмотрим этот простой фрейм данных:

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

df = pd.DataFrame({'category' :[['Restaurants', 'Pizza'],  ['Pizza', 'Restaurants'],  ['Restaurants', 'Mexican']]})
df:
Изображение

Проблема в том, что категории в первых двух строках по сути идентичны, просто расположены в разном порядке. Моя цель — объединить два в одно (неважно, какое). Таким образом, результирующий файл df должен выглядеть так:
Изображение
< /p>
или:
Изображение

Я подумал о том, чтобы получить индексы строк с по существу одинаковыми категориями (строки с индексами 0 и 1 в этом примере), а затем найти способ заменить все на одну. Но я не уверен, что мой код верен, а также весь набор данных огромен, поэтому это неэффективно:

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

identical_idx = []
df_length = len(df)
for i in range(df_length):
for j in range(df_length):
if i!=j:
if set(df.category.iloc[i]) == set(df.category.iloc[j]): identical_idx.append([i, j])
Каков наиболее эффективный способ добиться этого?

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

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

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

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

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

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

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