Using data folders, you can store your data within an experiment in a hierarchical manner. Hierarchical storage is useful when you have multiple sets of similar data. By storing each set in its own data folder, you can organize your data in a meaningful way and also avoid name conflicts.
Data folders contain four kinds of data objects:
- Data arrays (waves)
- Numeric variables
- String variables
- Other data folders
Igor's data folders are very similar to a computer's hierarchical disk file system except they reside wholly in memory and not on disk. This similarity can help you understand the concept of data folders but you should take care not to confuse them with the computer's folders and files.
Data folders are particularly useful when you conduct several runs of an experiment. You can store the data for each run in a separate data folder. The data folders can have names like "run1", "run2", etc., but the names of the data arrays and variables in each data folder can be the same as in the others. In other words, the information about which run the data objects belong to is encoded in the data folder name, allowing the data objects themselves to have the same names for all runs. This allows you to write procedures that use the same data array and variable names regardless of which run they are working on.
Data folders are very handy for programmers who need to create temporary data arrays during a procedure. You can create a temporary data folder with a name designed not to conflict with any other Igor object names and then create data arrays without having to worry about conflict. When done, you can kill the data folder and everything it contains with a single command rather than having to kill data arrays, variables, and strings. You can also use a data folder to store persistent data arrays and global variables not intended to be seen by the end user. As a programmer, you can use nested data folders as a sort of data structure. All operations in Igor Pro are data-folder aware. On the command line you can specify data arrays from several different data folders within one command.
The Data Browser is a window that lets you navigate through the different levels of data folders, examine values of variables, strings and data arrays (waves) and load data objects from other Igor experiments. Additionally, you can view information about selected objects and, for data arrays, a thumbnail plot of the data.
The user interface of the browser is similar to that of the Macintosh Finder or Windows Explorer. Variables, strings, waves and data folders are represented by unique icons and arranged in the main list based on their hierarchy in the current experiment.
The Browse Expt. button allows you to load data objects from Igor packed and unpacked experiments into the current experiment (in memory).
You may select one or more data objects and drag them to the main list. When the cursor appears on top of a valid drop target (a data folder in the current experiment), the target is highlighted. When you release the mouse button on a valid drop target, the browser loads the corresponding data objects into the specified data folder. There is no change to the experiment from which the data is loaded.