Объединение таблиц на основе информации о столбцах в PythonPython

Программы на Python
Ответить
Anonymous
 Объединение таблиц на основе информации о столбцах в Python

Сообщение Anonymous »

У меня есть кадры данных, извлеченные из файла. Переменная со всеми этими именами фреймов данных: Data_Tables.
Все эти фреймы данных имеют одинаковые столбцы, и я хочу объединить фреймы данных на основе записи для одного из столбцов, в этом примере я назову «фрукты».
Для отдельного фрейма данных фрукты будут одинаковыми, поэтому, если есть 10 фреймов данных, 3 могут быть яблоками, 2 — банан, 2 — лимон и по одному для винограда, черники и лайма.
На данный момент у меня есть сценарий для извлечения тех мест, где мы видим дублированные фрукты.
Другими словами, мне не нужно беспокоиться о винограде, чернике и лайме, поскольку их только по одному, но для яблок, бананов, и лимон, я хочу объединить их в три отдельные таблицы. Итак, я начну с 10 таблиц и закончу столько же таблиц, сколько фруктов (т. е. 6).
Кроме того, у меня также есть переменная, показывающая, сколько фреймов данных показывают этот конкретный фрукт, если их несколько, поэтому что-то вроде этого:

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

Multiple_Fruit --> [Apple, Banana, Lemon]

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

Num_Dups_per_Fruit ---> [3, 2, 2]
Моя проблема заключается в том, чтобы попытаться объединить только эти фрукты. Мой подход заключался в том, чтобы делать это итеративно, и вот что у меня есть:

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

for i in range(0,3)     # b/c 3 fruits w/ multiple dataframes
for j in range(0,10)    # b/c 10 total dataframes/files/tables
if Data_Tables[j].iloc[0,4] == Multiple_Fruit[i]    # [0,4] is specific location where fruit is in large dataframe
После этого я попытался объединить таблицы по мере их создания, но это не сработало:

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

 Concat_Dup_Fruit[i] = pd.concat([Concat_Dup_Fruit[i],Data_Tables[j]])
В конечном итоге количество файлов/фреймов данных и фруктов будет разным.

Подробнее здесь: https://stackoverflow.com/questions/798 ... -in-python
Ответить

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

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

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

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

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