How can I selectively multiplying the negative values with (-1) in an excel file?
3 次查看(过去 30 天)
显示 更早的评论
Hi everyone, I'm trying to read an excel file which has two columns and I want to multiply the negative values of column 2 with (-1). Could anyone please help me with a code to do that? Thank you!
0 个评论
回答(2 个)
Star Strider
2023-11-11
编辑:Star Strider
2023-11-11
Multiplying the negative values of column 2 by -1 will of course create them as positive values for all the entries.
0 个评论
dpb
2023-11-11
编辑:dpb
2023-11-11
data=readmatrix('yourExcelfile.xlsx');
isneg=(data(:,2)<0);
data(isneg,2)=-data(isneg,2);
"Use the Force, Luke!" Here "the Force" is logical indexing, one of the most powerful features in MATLAB.
That is, of course, if you really want/need to negate a specific subset; as @Star Strider notes, for the specific operation it is the equivalent of taking the absolute value of the column in which case you can save the extra step of the indexing expression --
data=readmatrix('yourExcelfile.xlsx');
data(:,2)=abs(data(:,2));
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Spreadsheets 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!