Hoffentlich ist dies ein einfacher. Ich habe die Foren und Google durchforstet, aber keine Lösung gefunden.Zählen der Anzahl der Ausgaben in einem Tupel
HINWEIS: Ich habe das Problem beantwortet, aber ich hatte gehofft, sie könnten eine Möglichkeit sein, dies in Python zu tun.
Problem: Ich möchte die Anzahl der verschiedenen Iterationen (Kombinationen) innerhalb einer for-Schleife zählen. Ich habe das getan, und listet auf, hilft, aber es startet neu, wenn die neue Kombination beginnt. Der lange Weg dahin war das Speichern der Liste in einer CSV und das Zählen der Kombinationen in Excel (was nicht schlecht ist), aber ich hatte gehofft, dass es eine Möglichkeit gibt, diese Nummer in Python zurückzugeben.
import itertools
import pandas as pd
import numpy as np
import csv
stuff = ['imp1', 'imp2', 'imp3','imp4', 'click1', 'click2', 'click3', 'click4']
results = []
for combination in range(0, len(stuff) + 1):
for subset in enumerate(itertools.combinations_with_replacement(stuff, combination)):
results.append(subset)
with open('Combinations_1.csv', 'wb') as myfile:
wr = csv.writer(myfile, quoting=csv.QUOTE_ALL)
wr.writerow(results)
Kurz, das gibt mir, was ich brauche, aber ich frage mich, ob es eine „value_counts“ Typ war Funktion (ähnlich, was in Pandas verwendet), um die Anzahl der verschiedenen einzigartigen Kombinationen oder Permutationen zu zählen.
Danke, Adrian
Warum Sie nicht verwenden ein einfacher Zähler in Ihrer For-Schleife? Es sollte nach jedem aktualisiert werden: 'results.append (subset)'. Zum Beispiel "count + = 1" – CunivL