Dies scheint eine einfache Pivot-Tabelle zu sein, mit der man lernen kann. Ich möchte für einen bestimmten Wert, den ich gruppiere, eindeutige Werte zählen.
Zum Beispiel habe ich Folgendes:
ABC 123
ABC 123
ABC 123
DEF 456
DEF 567
DEF 456
DEF 456
Was ich möchte, ist eine Pivot-Tabelle, die mir Folgendes zeigt:
ABC 1
DEF 2
Die einfache Pivot-Tabelle, die ich erstelle, gibt mir nur Folgendes (Anzahl der Zeilen):
ABC 3
DEF 4
Aber ich möchte stattdessen die Anzahl der eindeutigen Werte.
Ich versuche wirklich herauszufinden, welche Werte in der ersten Spalte nicht für alle Zeilen den gleichen Wert in der zweiten Spalte haben. Mit anderen Worten, "ABC" ist "gut", "DEF" ist "schlecht"
Ich bin mir sicher, dass es einen einfacheren Weg gibt, aber ich dachte, ich würde es mit dem Pivot-Tisch versuchen ...
excel
excel-formula
pivot-table
user1586422
quelle
quelle
Antworten:
Fügen Sie eine dritte Spalte ein und
C2
fügen Sie diese Formel in Zelle einund kopiere es nach unten. Erstellen Sie nun Ihren Pivot basierend auf der 1. und 3. Spalte. Siehe Schnappschuss
quelle
=IF(SUM((A$2:A2=A2)*(B$2:B2=B2)) > 1, 0, 1)
(drücken Sie Strg-Umschalt-Eingabetaste, wenn Sie die Formel eingeben, damit sie{}
um sie herum erfasst wird).UPDATE: Sie können dies jetzt automatisch mit Excel 2013 tun. Ich habe dies als neue Antwort erstellt, da meine vorherige Antwort tatsächlich ein etwas anderes Problem löst.
Wenn Sie über diese Version verfügen, wählen Sie Ihre Daten aus, um eine Pivot-Tabelle zu erstellen. Wenn Sie Ihre Tabelle erstellen, stellen Sie sicher, dass das Kontrollkästchen "Diese Daten zum Datenmodell hinzufügen" aktiviert ist (siehe unten).
Wenn Ihre Pivot-Tabelle geöffnet wird, erstellen Sie Ihre Zeilen, Spalten und Werte normal. Klicken Sie dann auf das Feld, für das Sie die eindeutige Anzahl berechnen möchten, und bearbeiten Sie die Feldwerteinstellungen:
Scrollen Sie abschließend bis zur letzten Option und wählen Sie "Distinct Count".
Dadurch sollten Ihre Pivot-Tabellenwerte aktualisiert werden, um die gesuchten Daten anzuzeigen.
quelle
Ich möchte eine zusätzliche Option in den Mix einfügen, für die keine Formel erforderlich ist, die jedoch hilfreich sein kann, wenn Sie eindeutige Werte innerhalb des Satzes in zwei verschiedenen Spalten zählen müssen. Mit dem ursprünglichen Beispiel hatte ich nicht:
und möchte, dass es wie folgt erscheint:
Aber eher so etwas wie:
und wollte, dass es erscheint als:
Ich habe den besten Weg gefunden, meine Daten in dieses Format zu bringen und sie dann weiter zu bearbeiten, indem ich Folgendes verwendet habe:
Wenn Sie "Running total in" ausgewählt haben, wählen Sie den Header für den sekundären Datensatz aus (in diesem Fall ist dies der Header- oder Spaltentitel des Datensatzes, der 123, 456 und 567 enthält). Dadurch erhalten Sie einen Maximalwert mit der Gesamtzahl der Elemente in diesem Satz innerhalb Ihres Primärdatensatzes.
Ich habe diese Daten dann kopiert, als Werte eingefügt und dann in eine andere Pivot-Tabelle eingefügt, um sie einfacher zu bearbeiten.
Zu Ihrer Information, ich hatte ungefähr eine Viertelmillion Datenzeilen, daher funktionierte dies viel besser als einige der Formelansätze, insbesondere diejenigen, die versuchen, zwei Spalten / Datensätze zu vergleichen, weil die Anwendung immer wieder abstürzt.
quelle
Ich fand, dass der einfachste Ansatz darin besteht, die
Distinct Count
Option unter zu verwendenValue Field Settings
( klicken Sie mit der linken Maustaste auf das Feld im BereichValues
). Die Option fürDistinct Count
befindet sich ganz unten in der Liste.Hier sind die Vorher (TOP; normal
Count
) und Nachher (UNTEN;Distinct Count
)quelle
Siehe Debra Dalgleishs Count Unique Items
quelle
Es ist nicht erforderlich, dass die Tabelle sortiert wird, damit die folgende Formel für jeden vorhandenen eindeutigen Wert eine 1 zurückgibt.
Angenommen, der Tabellenbereich für die in der Frage dargestellten Daten ist A1: B7 Geben Sie die folgende Formel in Zelle C1 ein:
Kopieren Sie diese Formel in alle Zeilen und die letzte Zeile enthält:
Dies führt dazu, dass beim ersten Auffinden eines Datensatzes eine 1 und danach für alle Zeiten eine 0 zurückgegeben wird.
Summieren Sie einfach die Spalte in Ihrer Pivot-Tabelle
quelle
=IF(COUNTIF($B$1:$B1,B1),1,0)
Wenn Sie einen großen Datensatz haben, verwenden Sie - auf diese Weise wird countif nur einmal ausgeführt!Meine Herangehensweise an dieses Problem war etwas anders als die, die ich hier sehe, also werde ich teilen.
Hinweis: Ich möchte Bilder einfügen, um dies noch verständlicher zu machen, kann es aber nicht, da dies mein erster Beitrag ist;)
quelle
Siddharths Antwort ist großartig.
Diese Technik kann jedoch Probleme verursachen, wenn Sie mit einer großen Datenmenge arbeiten (mein Computer ist in 50.000 Zeilen eingefroren). Einige weniger prozessorintensive Methoden:
Einzelne Eindeutigkeitsprüfung
Verwenden Sie eine Formel, die weniger Daten berücksichtigt
Mehrere Eindeutigkeitsprüfungen
Wenn Sie die Eindeutigkeit in verschiedenen Spalten überprüfen müssen, können Sie sich nicht auf zwei Sortierungen verlassen.
Stattdessen,
Fügen Sie eine Formel hinzu, die die maximale Anzahl von Datensätzen für jede Gruppierung abdeckt. Wenn ABC 50 Zeilen haben könnte, lautet die Formel
quelle
=A2&B2
. Fügen Sie dann eine Spalte D hinzu und setzen Sie sie in D2=IF(MATCH(C2, C$2:C2, 0) = ROW(C1), 1, 0)
. Füllen Sie beide aus. Während dies immer noch vom Anfang des gesamten Bereichs an sucht, stoppt es, wenn es den ersten findet, und anstatt die Werte aus 50.000 Zeilen miteinander zu multiplizieren, muss es nur den Wert lokalisieren - daher sollte es eine viel bessere Leistung erzielen.Excel 2013 kann in Pivots unterschiedlich zählen. Wenn kein Zugriff auf 2013 vorliegt und die Datenmenge geringer ist, erstelle ich zwei Kopien der Rohdaten. Wählen Sie in Kopie b beide Spalten aus und entfernen Sie Duplikate. Dann machen Sie den Drehpunkt und zählen Sie Ihre Spalte b.
quelle
Sie können COUNTIFS für mehrere Kriterien verwenden.
= 1 / COUNTIFS (A: A, A2, B: B, B2) und dann nach unten ziehen. Sie können dort so viele Kriterien eingeben, wie Sie möchten, die Verarbeitung dauert jedoch in der Regel sehr lange.
quelle
Schritt 1. Fügen Sie eine Spalte hinzu
Schritt 2. Verwenden Sie die Formel =
IF(COUNTIF(C2:$C$2410,C2)>1,0,1)
im 1. DatensatzSchritt 3. Ziehen Sie es auf alle Datensätze
Schritt 4. Filtern Sie '1' in der Spalte mit der Formel
quelle
Sie können eine zusätzliche Spalte erstellen, um die Eindeutigkeit zu speichern, und diese dann in Ihrer Pivot-Tabelle zusammenfassen.
Was ich meine ist, Zelle
C1
sollte immer sein1
. Die ZelleC2
sollte die Formel enthalten=IF(COUNTIF($A$1:$A1,$A2)*COUNTIF($B$1:$B1,$B2)>0,0,1)
. Kopieren Sie diese Formel nach unten, damit die ZelleC3
sie enthält=IF(COUNTIF($A$1:$A2,$A3)*COUNTIF($B$1:$B2,$B3)>0,0,1)
und so weiter.Wenn Sie eine Kopfzelle haben, möchten Sie diese alle in einer Reihe nach unten verschieben, und Ihre
C3
Formel sollte lauten=IF(COUNTIF($A$2:$A2,$A3)*COUNTIF($B$2:$B2,$B3)>0,0,1)
.quelle
Wenn Sie die Daten sortiert haben, schlage ich vor, die folgende Formel zu verwenden
Dies ist schneller, da weniger Zellen zur Berechnung verwendet werden.
quelle
Normalerweise sortiere ich die Daten nach dem Feld, in dem ich die eindeutige Zählung durchführen muss, und verwende dann IF (A2 = A1,0,1). Sie erhalten dann eine 1 in der oberen Reihe jeder Gruppe von IDs. Einfach und nimmt keine Zeit in Anspruch, um große Datenmengen zu berechnen.
quelle
Sie können auch für die Hilfsspalte verwenden
VLOOKUP
. Ich habe getestet und sieht ein bisschen schneller aus alsCOUNTIF
.Wenn Sie den Header verwenden und die Daten in der Zelle beginnen
A2
, verwenden Sie in jeder Zelle in der Zeile diese Formel und kopieren Sie sie in alle anderen Zellen in derselben Spalte:quelle
Ich habe einen einfacheren Weg gefunden, dies zu tun. Bezugnehmend auf das Beispiel von Siddarth Rout, wenn ich eindeutige Werte in Spalte A zählen möchte:
quelle
B
. Wie werden Sie dies anpassen, um mit mehreren Spalten zu arbeiten?