Ich habe eine Datentabelle, in der einige Spalten Werte enthalten, die sich wiederholen, weil das Programm, das die Daten generiert, den letzten Wert behält, wenn kein neuer Wert angegeben wird.Das bedeutet, dass ich die Option „Doppelte Zeilen auswählen“ nicht verwenden kann, da dadurch alle Duplikate gelöscht werden, nicht nur diejenigen, die sich wiederholen. Ich möchte auch nicht die Zeilen löschen, sondern nur die Werte in den „Zellen“.
- 4.1
- 3.4
- 3.4 - Wert löschen
- 3.4 - Wert löschen
- 5.1
- 2.6
- 4.1 - Behalten!
- 3.4 - Behalten!
- 7.2
- 7.2 - Wert löschen
- 7.2 - Wert löschen
Das würde werden
- 4.1
- 3.4
- .
- .
- 5.1
- 2.6
- 4.1
- 3.4
- 7.2
- .
- .
JMP Pro 17.0.0
Sie können ein Skript wie das folgende verwenden:
Names Default To here(1);
dt= current data table();
// nouvelle colonne
dt << New Column( "nouvelles valeurs",
Numeric,
"Continuous",
Format( "Best", 12 )
);
// Modifier la formule de colonne : nouvelles valeurs
dt:nouvelles valeurs <<
Set Formula(
If( :valeurs[Sequence( 1, N rows(dt), 1, 1 )] == :valeurs[Sequence( 2, N rows(dt), 1, 1 )],
:nouvelles valeurs = .,
:nouvelles valeurs = :valeurs
)
);
Ich würde höchstwahrscheinlich entweder Dif oder Lag verwenden und eine neue Spalte erstellen. Entfernen Sie dann basierend auf den Werten dieser Spalte Werte aus der vorhandenen Spalte
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(11),
Compress File When Saved(1),
New Column("Column 1",
Numeric,
"Continuous",
Format("Best", 12),
Set Values([4.1, 3.4, 3.4, 3.4, 5.1, 2.6, 4.1, 3.4, 7.2, 7.2, 7.2])
)
);
dt << New Column("ToDelete", Numeric, Nominal, << Set Each Value(
Dif(:Column 1) == 0
));
Oder Sie können eine neue Spalte mit Werten erstellen (IfMZ wird verwendet, um die erste Zeile beizubehalten).
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(11),
Compress File When Saved(1),
New Column("Column 1",
Numeric,
"Continuous",
Format("Best", 12),
Set Values([4.1, 3.4, 3.4, 3.4, 5.1, 2.6, 4.1, 3.4, 7.2, 7.2, 7.2])
)
);
dt << New Column("NewValues", Numeric, Nominal, << Set Each Value(
IfMZ(Dif(:Column 1) == 0,
.
,
:Column 1
)
));
