Concatenating data from multiple experiments

I am trying to aggregate data from many different experiments; the same parameters will be pulled from each experiment, and I would like them all to end up in one wave file.

What is the best way to do this? LoadData and LoadWave tend to overwrite previous waves due to name similarities; Concatenate function gives me errors no matter what I write.

Is there a way to send data, let's say 5 data points from each experiment, into a common file that exists in some kind of "root-esque" folder above all the others?
Or do I HAVE to load the wave/file into the current experiment to append it?

Thank you for your advice.

Happy Igoring!
One approach is to have each experiment write its results to an external file, or to external files in a folder with one file per experiment.

Another approach is to store the data to be shared in a special data folder in the root data folder (or elsewhere in the hierarchy) and then write an Igor procedure to read the data from a packed experiment file. This routine would be responsible for whatever renaming is necessary.

I would need more information on what you are doing, including the big picture and how much data you are dealing with, in order to recommend how I would do it.

Quote:
Concatenate function gives me errors no matter what I write.


With a description of what you want to do, including a specific example (sample commands), we could no doubt tell you how to do it.
urisays wrote:
I am trying to aggregate data from many different experiments; the same parameters will be pulled from each experiment, and I would like them all to end up in one wave file. ...


I think you have to load it to the current experiment.
It may be more work than you really need, however the SnapIt package might be an option. Here would be a methodology ...

* Create a folder --> AggregateX
* For the number of experiments you want to aggregate
-- Open the experiment and graph only the wave that you want to aggregate
-- SnapIt on the graph to an experiment in folder AggregateX
* Repeat until done collecting aggregate waves

* Open a new experiment in Igor
* Run the MergeSnapShots() command at the command line and select all experiments in AggregateX folder

When complete, you will have in one experiment all of the waves you wanted to aggregate, each in a separate folder. The experiment will also show the individual graphs for each wave. You can use other options to merge the waves in to one graph.

urisays wrote:
Or do I HAVE to load the wave ... to append it?


I think the answer is categorically yes on this one.

I have a follow-up idea in a different thread

--
J. J. Weimer
Chemistry / Chemical & Materials Engineering, UAHuntsville
Thank you for the advice.
Here is the bit of code that I was having issues with. I have created the wave "AveragePkjRate" and the PathName "SpontaneousCellAttached" points to a folder that contains the space-delimited text file "PkjAveHz.txt" to which I would like to append the wave.

SaveTableCopy/A=1/P=SpontaneousCellAttached/T=3/W=AveragePkjRate as "PkjAveHz.txt"

The error highlights "PkjAveHz.txt" and says "expected name of a table". I do not know what is wrong with the command.
Once this error is resolved, I think I will be smooth sailing.

Thanks

Uri
SaveTableCopy does not save a wave's data to a file. It saves the text displayed for all waves in a table to a file.

The SaveTableCopy /W flag does not specify the wave. It specifies the name of the table.

To append data for a wave to a file, use Save/T/A.