I have a struct in Octave that contains some big arrays.
I’d like to know the names of the fields in this struct without having to look at all these big arrays.
For instance, if I have:
x.a=1;
x.b=rand(3);
x.c=1;
The obvious way to take a gander at the structure is as follows:
octave:12> x
x =
scalar structure containing the fields:
a = 1
b =
0.7195967 0.9026158 0.8946427
0.4647287 0.9561791 0.5932929
0.3013618 0.2243270 0.5308220
c = 1
In Matlab, this would appear as the more succinct:
>> x
x =
a: 1
b: [3x3 double]
c: 1
How can I see the fields/field names without seeing all these big arrays?
Is there a way to display a succinct overview (like Matlab’s) inside Octave?
Thanks!
You might want to take a look at Basic Usage & Examples. There’s several functions mentioned that sound like they’ll control the displaying in the terminal.
struct_levels_to_printprint_struct_array_contentsThese two functions sound like they’re do what you want. I tried both and couldn’t get the 2nd one to work. The 1st function changed the terminal output like so:
I’m running a older version of Octave.
If I get a chance I’ll check that other function,
print_struct_array_contents, to see if it does what you want. Octave 3.6.2 looks to be the latest version as of 11/2012.