TABLE OF 2 ROWS AND 12 COLUMNS
11 次查看(过去 30 天)
显示 更早的评论
Hi,I want to make a TABLE OF 2 ROWS AND 12 COLUMNS WITH YEAR IN THE FIRST ROW AND NUMBER OF EARTHQUAKES IN THE SECOND ROW.
year=[2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 ];
n_of_earthquakes=[1 2 4 0 1 1 1 2 2 1 1 0]
0 个评论
采纳的回答
Image Analyst
2017-10-11
You can't have a table like that. You can however have them in columns:
year=[2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 ];
n_of_earthquakes=[1 2 4 0 1 1 1 2 2 1 1 0]
t = table(year', n_of_earthquakes', 'VariableNames', {'year', 'n_of_earthquakes'})
If you want a matrix (a regular double numerical array) rather than a "table" variable, you can just use seimcolon:
m = [year; n_of_earthquakes]
更多回答(1 个)
Walter Roberson
2017-10-10
year = 1973 : 1984;
earthquakes = randi(10000, 1, 12);
YourTable = array2table([year; earthquakes], 'RowNames', {'year', '# earthquakes'})
6 个评论
Walter Roberson
2017-10-11
That command take the vector year, and for each element of it, applies the function @(Y) sprintf('yr%d', Y) . That function converts the numeric element to a string and puts the characters 'yr' in front of that, giving a character vector as a result for each numeric element. The 'uniform', 0 option tells MATLAB to put the results into a cell array, so the end result stored in ylab is a cell array, each element of which is a character vector that starts with 'yr' and then followed by the year.
Starting in R2017a, the entire line can be replaced with
ylab = "yr" + year;
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Earthquake Engineering 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!