Удаление дубликатов из строк Excel путем добавления значений некоторых столбцов - PullRequest
0 голосов
/ 13 февраля 2019

У меня есть файл Excel, содержащий 500 строк, содержащих сведения о продукте и их количество в разных программах.Все эти 500 строк являются продублированными продуктами с разным количеством.Я хотел бы удалить дубликаты и сложить количества, чтобы вместо 5 строк, имеющих идентификатор продукта D1, я хотел бы иметь только одну строку (количества из 4 других строк добавляются в оставшуюся строку) [я ищу, чтобы создать нижнюю таблицу из верхней]

enter image description here Я обнаружил аналогичную проблему со стековым потоком, и люди предложили загрузить данные в базу данных и получить сумму (количество1), сумму (количество2), ... но у меня 150 столбцовпоэтому я не смог бы написать запрос для этого.( Удаление дублирующихся строк путем добавления значения столбца )

Я думаю о написании скрипта Python, но я не уверен, как справиться с дубликатами.

Большое спасибо.

Ответы [ 4 ]

0 голосов
/ 13 февраля 2019

Скопируйте первые 3 столбца на другой лист или в другое место.Используйте «Удалить дубликаты».Чтобы найти сумму количеств, используйте формулу, подобную этой:

=SUMIFS($D$2:$D$500, $A$2:$A$500, $A2, $B$2:$B$500, $B2, $C$2:$C$500, $C2)

Затем перетащите формулу, чтобы найти другие величины.

0 голосов
/ 13 февраля 2019
0 голосов
/ 13 февраля 2019
import pandas as pd
import numpy as np

df = pd.DataFrame({
        "ProductsID": ["A1", "A1", "B1", "B1", "B1"], 
        "Category": ["MM", "MM", "NN", "NN", "NN"],
        "Price": [50, 50, 42, 42, 42],
        "Quantity1": [1, 8, 5, np.nan, 4],
        "Quantity2": [6, 3, np.nan, 2, 3]})

grouped = df.groupby(by=["ProductsID", "Category"])
agged = grouped.agg({"Price": "max", 
                "Quantity1": "sum", 
                "Quantity2":"sum"})

result = agged.reset_index()

Результат:

  ProductsID Category  Quantity1  Quantity2  Price
0         A1       MM        9.0        9.0     50
1         B1       NN        9.0        5.0     42
0 голосов
/ 13 февраля 2019

Я не вижу ваше изображение, но при условии, что оно довольно стандартное расположение: если вы можете отсортировать данные по продукту, вы можете использовать для этого встроенную функциональность Excel.Использовать данные, промежуточный итог - укажите, что при каждом изменении в ProductID вы хотите суммировать количество.Затем сверните таблицу результатов, чтобы были показаны только итоги.Используйте «Домой», «Найти и выбрать», «Перейти к спец.», Только видимые ячейки.Затем скопируйте и перейдите ко второму листу. Теперь у вас есть все итоги товаров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...