changing the values

1 visualizzazione (ultimi 30 giorni)
FIR
FIR il 25 Feb 2012
Modificato: Azzi Abdelmalek il 25 Ott 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

Risposta accettata

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

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by