Hello,
How can I add header to my table below ?
I want to add header
header={'Call price','Standard error','Number of paths'}
to the table.
S0=30;
K=32;
r=0.03;
sigma=0.2;
T=1;
n=365;
%m=500; % number of simulations
j=1;
for i=500:500:10000
[call_price,standard_error,numberOfpaths]=Call_Simulation(S0,K,r,sigma,n,i,T);
Call_Price(j)=call_price;
Standard_Error(j)=standard_error;
NumberOfPaths(j)=numberOfpaths;
j=j+1;
end
header={'Call price','Standard error','Number of paths'};
T=table(Call_Price',Standard_Error',NumberOfPaths');
disp(T);
error_table.PNG

 Akzeptierte Antwort

Star Strider
Star Strider am 17 Feb. 2019

2 Stimmen

Use the 'VariableNames' (link) name-value pair with your ‘header’ cell array.

5 Kommentare

Bai chen
Bai chen am 17 Feb. 2019
I looked through the link.
It does not help.
The elements of ‘header’ must be valid MATLAB variable names. Then it works.
Try this:
T = table(rand(5,1),rand(5,1),rand(5,1))
header={'Call_price','Standard_error','Number_of_paths'};
T.Properties.VariableNames = header
producing:
T =
5×3 table
Var1 Var2 Var3
_______ _______ ________
0.48861 0.54681 0.67914
0.57853 0.52114 0.39552
0.23728 0.23159 0.36744
0.45885 0.4889 0.98798
0.96309 0.62406 0.037739
T =
5×3 table
Call_price Standard_error Number_of_paths
__________ ______________ _______________
0.48861 0.54681 0.67914
0.57853 0.52114 0.39552
0.23728 0.23159 0.36744
0.45885 0.4889 0.98798
0.96309 0.62406 0.037739
That should do what you want.
Walter Roberson
Walter Roberson am 17 Feb. 2019
Note that table() objects do not support arbitrary column headers. They can store VariableDescription for each column, but summary() is about the only thing that displays the description.
Shannon Wagoner
Shannon Wagoner am 4 Mär. 2020
@walter can you shhow an example of summary?
Star Strider
Star Strider am 4 Mär. 2020

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Denise Selegato
Denise Selegato am 24 Sep. 2019

0 Stimmen

Hi, I've been having a similar problem.
I want to put the following header on my table(T):
header = {'#DATA=RDC', 'PRIOR=GAUSS'}
However, if I try to use T.Properties.VariableNames, it gives me an error because I started my cell array with a "#". I need this # to be included in the header.
Is there a solution to my problem?
Thank you!

3 Kommentare

Star Strider
Star Strider am 24 Sep. 2019
Prior to R2019b, variable names in table objects have to be valid MATLAB variable names. Neither one in ‘header’ qualifies. You can certainly print those to a file as a separate line before you print your data (most likely using fprintf), then output your data to the file in a separate fprintf call.
However, if you upgrade to R2019b, you can likely do what you want. See the Release Notes, and specifically the writetable documentations section on: Write Tabular Data Containing Arbitrary Variable Names.
Note that this is also true for table objects in general. See: Specify Variable Names Using Any Characters in the R2019b table documentation.
Denise Selegato
Denise Selegato am 25 Sep. 2019
It worked perfctly on MATLAB2019b, thank you for helping.
Star Strider
Star Strider am 25 Sep. 2019
My pleasure.

Melden Sie sich an, um zu kommentieren.

Kategorien

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by