2013-07-05 105 views
0

我用下面的代碼來找到我的數據集的特定條目,並設置這個值obsNum如何增加一個觀察值?

originalSet(strcmp(originalSet.ABC, subset.DEF{row}) & strcmp(originalSet.FGH, task),21) = dataset(obsNum); 

不過,我想通過obsNum增加當前值,而不是將其設置爲obsNum的,但我找不到它的語法。在Java中,我只會寫+=,但我怎麼能在Matlab中做到這一點?

+0

我不完全理解你的代碼片段,而是根據你的描述,這是你想要什麼? currentvalue = currentvalue + obsNum – Cici

+0

Cici正是我想要實現的! – RoflcoptrException

+0

請參見:[在MATLAB中等效於+ =的含義是什麼?](http://stackoverflow.com/questions/6637735/what-is-is-the-equivalent-to-in-matlab)。 Matlab不支持[複合賦值運算符](http://en.wikipedia.org/wiki/Operators_in_C_and_C++#Compound_assignment_operators)。 – horchler

回答

1

沒有爲+=運營商沒有Matlab的語法的支持,你需要索引變量兩次:

idx = strcmp(originalSet.ABC, subset.DEF{row}) & strcmp(originalSet.FGH, task); 
originalSet(idx,21) = originalSet(idx,21) + dataset(obsNum); 
+0

非常感謝,我會試試這個。 – RoflcoptrException

相關問題