NC_Classify¶
NC_Classify klassiert eine Datei in Gruppen. Für jede Gruppe wird ein Indexkanal erzeugen. Der Indexkanal beginnt mit dem Wert 1. Der Wert ist konstant für eine Gruppe. Die zweite Gruppe hat den Wert 2 usw. Falls die Funktion mit mehr als 2 Parametern aufgerufen wird, wird die Datei in Abhängigkeit vom angegebenen Indexkanal in einzelne Dateien aufgetrennt.
-
bool = NC_Classify(ncid, smClassDefine)
-
bool = NC_Classify(ssNCFile, smClassDefine)
-
svNames = NC_Classify(ncid, smClassDefine, ssSplitBaseName, ssSplitIndexChannel)
-
svNames = NC_Classify(ssNCFile, smClassDefine, ssSplitBaseName, ssSplitIndexChannel)
-
svNames = NC_Classify(ncid, smClassDefine, ssSplitBaseName, ssSplitIndexChannel, svChannelList)
-
svNames = NC_Classify(ssNCFile, smClassDefine, ssSplitBaseName, ssSplitIndexChannel, svChannelList)
Returnwert
bool
svNames sind die Namen der aufgetrennten NC-Dateien.
Parameter
-
ssNCFile
ssNCFile ist der Name einer NC-Datei mit Daten mit mehreren Zyklen.
-
ncid
ncid ist die Zugriffsnummer einer NC-Datei, die von einem erfolgreichen Aufruf der Funktionen nc_create oder nc_open geliefert wurde. Die Datei muss mit Schreibzugriff geöffnet sein.
-
smClassDefine
smClassDefine ist eine Stringmatrix mit 2 Spalten und 1 bis 4 Zeilen. Dir erste Spalte enthält Kanalnamen und die zweite Spalte eine Toleranz. Die Toleranz wird als Zeichenkette definiert, z. B. „0.5“. Dezimaltrennzeichen ist ein Punkt, Beispiel:
smClassDefine = ["speed", "10"; "torque", "0.5"];
Bei Textkanälen wird der Toleranzwert nicht ausgewertet. Als Toleranzwert kann ein leerer String „“ angegeben werden.
-
ssSplitBaseName
ssSplitBaseName ist der vollständige Name, unter dem die einzelnen Dateien gespeichert werden. Der Name der aufgetrennten Dateien wird aus dem angegebenen Namen plus dem Kanalnamen nach dem aufgetrennt wird und der Indexnummer getrennt durch einen Unterstring gebildet. Beispiel: „d:\map-data_map.xls_N=4590_10.nc“
-
ssSplitIndexChannel
ssSplitIndexChannel ist der Name des Indexkanals. Der Name wird aus dem Text
_index_
gefolgt vom Kanalnamen gebildet.
-
svChannelList
svChannelList ist eine optionale Liste mit Kanalnamen, die in die aufgetrennten Dateien eingefügt werden sollen.
Kommentar
Es können bis zu vier Kanäle definiert werden, nach denen klassiert werden soll.
Die Daten des ersten ausgewählten Kanals werden aufsteigend sortiert. Auf den ersten Wert des Kanals (Minimum) wird die zweifache Toleranz addiert und damit die Klassenunter- und -obergrenze der ersten Klasse festgelegt. Die nächste Klasse beginnt bei dem Wert, der größer als die Klassenobergrenze der vorhergehenden Klasse ist.
Für jeden Kanal nach dem klassiert wird, erzeugt die Funktion einen neuen Kanal,
der sich aus dem Text _index_
und dem entsprechenden Kanalnamen
zusammensetzt, z. B. _index_n_Motor
. Der Kanal enthält ganze Zahlen,
beginnend mit 1. Alle Zeilen (Records) einer Klasse haben den gleichen Indexwert.
Falls der Kanal missing values enthält, erhält der Index-Kanal den Wert 0.
Der neu erzeugte Index-Kanal kann dann beim Import verwendet werden, z. B. für den Typ 2D: x/y/Zyklus-Index.
Wird die Funktion mit mehr als 2 Parametern aufgerufen, wird die Datei anhand eines Indexkanals in Einzeldateien aufgetrennt. Jede Datei enthält alle globalen Attribute der Ausgangsmessung.
Sie auch Dateneditor=>Klassieren.
Beispiel
def TestSplit()
{
ssFile = GetRootDirector() + "samples\\map-data.xls";
ssNCFile = auto_ImportData(ssFile);
if (ssNCFile == "") {
return FALSE;
}
ssNewNCBaseName = sum(SplitPath(ssNCFile)[1,2,3]);
return NC_Classify(ssNCFile, ["N", "20"], ssNewNCBaseName, "_index_N");
}
History
Version | Beschreibung |
---|---|
R2013.14 | Neu. |
Siehe auch
Überblick UniPlot-Datendateien, Datei=>Daten exportieren, nc_create, Dateneditor=>Klassieren Dateneditor=>Mittelwert-Zyklus
id-1676138