Rename dataset variable

I am trying to rename a field in a dataset, but I get an error:
>> someDS.Properties.VarNames{3} = 'NEWNAME';
??? Error using ==> dataset.subsasgn at 418
Duplicate variable names.
No, there is no other variable with the same name I'm trying to assign!
What am I doing wrong?
Thanks

3 件のコメント

Peter Perkins
Peter Perkins 2012 年 2 月 22 日
Mark, I'm guessing you know this, but just in case, that error message is referring to a "dataset variable" with that name, not to a "workspace variable".
If that's not the source of confusion, then something funny is going on, and I can't reproduce it. What is returned from someDS.Properties and from someDS.Properties.VarNames?
Mark
Mark 2012 年 2 月 23 日
What I can tell you is that "someDS" was created using the "join" function. The resulting dataset had no duplicate variable names. In fact, you can use any (valid) name you can think of on the right-hand side and you will get the same error.
I was able to fix the problem using a different approach, though. Before using "join" I assign names to the VariableNames of each of the dataset variables that I am joining (using the exact syntax above!!). The joined dataset has the VariableNames I want.
Regarding your question: "What is returned ... from someDS.Properties.VarNames". A cell array of strings containing the variable names in the dataset
Oleg Komarov
Oleg Komarov 2012 年 2 月 23 日
I cannot reproduce the problem. Please post the complete code with a minimal working example which causes the error. Also, post the MATLAB version and OS.

サインインしてコメントする。

回答 (0 件)

質問済み:

2012 年 2 月 22 日

編集済み:

2013 年 10 月 21 日

Community Treasure Hunt

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

Start Hunting!

Translated by