Транзакция CSV выглядит следующим образом, и я добавляю их в список, как показано ниже.
Bread Milk
Bread Diapers Beer Eggs Beer
[{'Bread': 1, 'Milk': 1, '': 7}, {'Bread': 1, 'Diapers': 1, 'Beer': 6, 'Eggs': 1}, {'Milk': 1, 'Diapers': 1, 'Beer': 6, 'Cola': 1}, {'Bread': 1, 'Milk': 1, 'Diapers': 1, 'Beer': 6}, {'Bread': 1, 'Milk': 1, 'Diapers': 2, 'Cola': 1, 'Chips': 2, 'Beer': 1, '': 1}, {'Bread': 1, 'Milk': 1, '': 7}, {'Bread': 1, 'Cola': 1, 'Beer': 3, 'Milk': 1, 'Chips': 1, 'Diapers': 3, '': 1}, {'Milk': 1, 'Bread': 1, 'Beer': 4, 'Cola': 1, 'Diapers': 1, 'Chips': 1}, {'Bread': 1, 'Milk': 2, 'Diapers': 2, 'Beer': 2, 'Chips': 2}, {'Bread': 2, 'Beer': 3, 'Diapers': 3, 'Milk': 1}]
Я хотел бы рассмотреть только список, который содержит подгузники количество 3.
Iожидал, что транзакции будут возвращаться только как показано ниже:
{'Bread': 2, 'Beer': 3, 'Diapers': 3, 'Milk': 1}
{'Bread': 1, 'Cola': 1, 'Beer': 3, 'Milk': 1, 'Chips': 1, 'Diapers': 3, '': 1}
{'Bread', 'Beer', 'Diapers', 'Milk'}
{'Bread', 'Cola', 'Beer', 'Milk', 'Chips', 'Diapers', ''}
Код, который у меня есть:
def M():
li = []
# Open the csv file
with open('transaction.csv') as fp:
DataCaptured = csv.reader(fp, delimiter=',')
# Iterate through each word in csv and add it's counter to the row
for row in DataCaptured:
li.append(dict(Counter(row)))
if li['Diaper']==3: ---> I am missing this logic not sure how to get it.
# Return the list of counters
return li
print(M())