changing the values

1 Ansicht (letzte 30 Tage)
FIR
FIR am 25 Feb. 2012
Bearbeitet: Azzi Abdelmalek am 25 Okt. 2013
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

Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 25 Feb. 2012
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 Kommentare
FIR
FIR am 25 Feb. 2012
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 am 25 Feb. 2012
it works,but i want that single quotes to be removed for further processing

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by