changing the values

1 次查看(过去 30 天)
FIR
FIR 2012-2-25
i have values in
r as
'<=50k' '>50k' '>50k' ; ;
; '>50k'
now i want to replace these values
>50k as 1
<=50 as 0
please help
i read those values from excel sheet
[d r]=xlsread('mydata.xls');in whicg i got those values in r

采纳的回答

Andrei Bobrov
Andrei Bobrov 2012-2-25
in this case
r = {'<=50k' '>50k' '>50k' '>50k'}
[a n n] = unique(r)
k = {0,1}
rnew = k(n)
or
rnew = cellfun(@(x)x-'0',regexprep(r,{'<=50k' , '>50k'},{'0','1'}))
on FIR comment: try
rnew = regexprep(r,{'<=50k' , '>50k'},{'0','1'})
on Pat comment
r = {'<=50k' '>50k' '>50k' '>50k' 'fg' ''}
rnew = regexprep(r, {'<=50k', '>50k'}, {'0', '1'})
t = ismember(rnew, {'0', '1'})
rnew(t) = cellfun(@(x)x-'0', rnew(t), 'un', 0)
  2 个评论
FIR
FIR 2012-2-25
Andrei error in both
in first i get values more than 1
and in second is get error aS
Error using ==> cellfun
Non-scalar in Uniform output, at index 1, output 1.
Set 'UniformOutput' to false.
Pat
Pat 2012-2-25
it works,but i want that single quotes to be removed for further processing

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by