Single quotes around dataset elements in 2017a?
1 回表示 (過去 30 日間)
古いコメントを表示
In MATLAB 2017a, when I load a dataset, say, cities.mat, all the city names come with single quotes around them, as shown in the attached file. When I call, say, the 5th element, it returns the city name with the quotation marks. Moreover, there is no way of getting rid of them through indexing.
When I run the same dataset in 2014a, for example, the quotes are not there. What am I doing wrong?
0 件のコメント
回答 (2 件)
Walter Roberson
2017 年 6 月 14 日
Those quotation marks are not present in the input: they are part of the display. You would see the same thing if you went to the MATLAB command prompt and typed
'A'
Because are only part of the display representation you do not need to do anything about them unless you are dealing with display representation matters -- in which case you could continue to use fprintf()
0 件のコメント
Chuck
2017 年 6 月 14 日
3 件のコメント
Steven Lord
2017 年 6 月 14 日
If you're using release R2016b or later, you could use a string array to store your text data unpadded. If you're using an earlier release, instead of storing your text data as a char matrix you could store it as a cell array, each cell of which contains a char vector. Walter used this cellstr technique in constructing the char matrix containing 'hello' and 'sam'.
Walter Roberson
2017 年 6 月 14 日
Note that string() applied to a char array will leave the individual results blank padded. You could
strtrim(string(YourCharArray))
or you could
string(cellstr(YourCharArray)))
On the other hand, string data shows up with "" instead of '' so you do not remove the problem of the delimiters showing up in the default output format.
参考
カテゴリ
Help Center および File Exchange で Cell Arrays についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!