Betreff: Stapelverarbeitung von Dateien zum Extrahieren von Daten in eine ÜbersichtstabelleBevor Sie mit der Schleife beginnen, erstellen Sie eine neue Tabelle mit den Spalten „Dateiname“ und „Bereich“ und formatieren Sie sie nach Ihren Wünschen. Am einfachsten ist es, eine neue Tabelle zu erstellen und dann das Copy Table Script zu verwenden. Denken Sie auch daran, dieser Tabelle eine Referenzvariable zuzuweisen!

Dann können Sie in der Schleife, nachdem Sie die Fläche berechnet haben, den Tabellennamen mit << Get Name erhalten und dann die neuen Zeilen mit << Add Rows() zu Ihrer Sammlungstabelle hinzufügen. Denken Sie auch daran, nicht benötigte Tabellen und Berichte zu schließen, nachdem Sie die relevanten Informationen daraus erhalten haben.
Names Default To Here(1);
dt_collector = New Table("Untitled",
Add Rows(0),
New Column("File Name", Character, Nominal, Set Values({})),
New Column("Area", Numeric, "Continuous", Set Values([]))
);
// For(..
// ...
//dt_name = dt << Get Name;
dt_name = "table";
area = 123;
dt_collector << Add Row({File Name = dt_name, Area = area});
//);
Betreff: Stapelverarbeitung von Dateien zum Extrahieren von Daten in eine ÜbersichtstabelleIch habe Code hinzugefügt, der eine neue Datentabelle erstellt und den Dateinamen und den Bereich in die neue Tabelle schreibt
Names Default to Here( 1 );
//point to file directory
path = Pick Directory( "Select Directory Containing Data Files" );
//Gets the list of files in the selected file folder
file_list = Files In Directory( path );
// Crete beginnings of output data table
dtFinal = New Table( "Final", New Column( "File Name", Character ), New Column( "Area" ) );
//i=0;open file
nfile_list = N Items( file_list );
For( i = 1, i <= nfile_list, i += 1,
//Set Current Directory( dir_DirectoryPath );
dt = Open( path || file_list[i], );
//Calculate area
dt = Current Data Table();
dt << clear row states;
obj3 = dt << Bivariate(
invisible,
Y( :Name( "Data" ) ),
X( :Time ),
Fit Polynomial( 6, {Line Color( {212, 73, 88} )} ),
SendToReport( Dispatch( {}, "Bivar Plot", FrameBox, {Frame Size( 449, 411 )} ) )
);
//save graph to data dable
obj3 << Save Script to Data Table( "Area" );
//get the prediction formula string and calculate the area under the curve for 30 minute adsoription
fm = Report( obj3 )[Outline Box( "Polynomial ?" )][Text Edit Box( 1 )] << get text;
//get the string to the right of the equal sign and convert the string to an expression using Parse()
fm = Parse( Trim( Word( 2, fm, "=" ) ) );
area = Integrate( fm, :Time, 0, 3600 );
Caption( "The area under this curve is " || Char( area ) );
Print( area );
// Add information to Final data table
dtFinal << add rows( 1 );
dtFinal:File Name[N Rows( dtFinal )] = file_list[i];
dtFinal:area[N Rows( dtFinal )] = area;
);Betreff: Stapelverarbeitung von Dateien zum Extrahieren von Daten in eine ÜbersichtstabelleDanke schön! Du hast auch eine schöne ausführliche Erklärung gegeben. Einfach zu folgen 
Betreff: Stapelverarbeitung von Dateien zum Extrahieren von Daten in eine ÜbersichtstabelleDanke schön! Ich habe zuerst die andere Antwort gesehen, aber diese gefällt mir auch.
Stapelverarbeitungsdateien zum Extrahieren von Daten in eine ÜbersichtstabelleIch habe mehrere Dateien, die ich analysieren möchte. Ich möchte eine Schleife erstellen, um die Datei zu öffnen, die Analyse durchzuführen, in diesem Beispiel einen Wert „Fläche unter einer Kurve“ zu berechnen und dann eine Übersichtstabelle mit dem Dateinamen und der Fläche zu erstellen. Ich kann die Dateien aus einem Ordner öffnen und die Analyse durchführen. Ich bin nicht sicher, wie ich die Übersichtstabelle erstellen soll. Ich habe ein Beispiel mit 2 Dateien gegeben, aber ich habe noch viele weitere Dateien, die ich auf diese Weise verarbeiten möchte. Jede Hilfe oder Anleitung wird sehr geschätzt! Teilen Sie mir bitte auch mit, wenn dies keinen Sinn ergibt oder weitere Informationen benötigt werden.
//point to file directory
path = Pick Directory( "Select Directory Containing Data Files" );
//Gets the list of files in the selected file folder
file_list = Files In Directory( path );
//i=0;open file
nfile_list = N Items( file_list );
For( i = 1, i <= nfile_list, i += 1,
//Set Current Directory( dir_DirectoryPath );
dt = Open( path || file_list[i], );
//Calculate area
dt = Current Data Table();
dt << clear row states;
obj3 = dt << Bivariate(
Y( :Name( "Data" ) ),
X( :Time ),
Fit Polynomial( 6, {Line Color( {212, 73, 88} )} ),
SendToReport( Dispatch( {}, "Bivar Plot", FrameBox, {Frame Size( 449, 411 )} ) )
);
//save graph to data dable
obj3 << Save Script to Data Table( "Area" );
//get the prediction formula string and calculate the area under the curve for 30 minute adsoription
fm = Report( obj3 )[Outline Box( "Polynomial ?" )][Text Edit Box( 1 )] << get text;
//get the string to the right of the equal sign and convert the string to an expression using Parse()
fm = Parse( Trim( Word( 2, fm, "=" ) ) );
area = Integrate( fm, :Time, 0, 3600 );
Caption( "The area under this curve is " || Char( area ) );
Print( area );
);
Beispiel für einen Final Table, den ich gerne hätte:

Jede Hilfe dabei wäre sehr dankbar. Danke
Massenanpassung