How to rearrange a column by a specific order?

3 次查看(过去 30 天)
Lets say i have a table:
IDname | IDnumber | version | status
x1 | 1 | v1 | backlog
x2 | 1 | v1 | Done
x3 | 1 | v1 | verify
x4 | 1 | v1 | Done
x5 | 1 | v1 | backlog
x6 | 1 | v1 | verify
x7 | 1 | v1 | verify
I want to be able to group and reorder column "Status" like this:
IDname | IDnumber | version | status
x1 | 1 | v1 | backlog
x5 | 1 | v1 | backlog
x3 | 1 | v1 | verify
x6 | 1 | v1 | verify
x7 | 1 | v1 | verify
x2 | 1 | v1 | Done
x4 | 1 | v1 | Done
I thought you would categorical the column and try sort it using some like this
datanew = categorical(data.Status, {'backlog', 'verify', 'done'}
but this doesnt seem to work..
Cheers!

回答(1 个)

KSSV
KSSV 2021-10-11
How about using sort?
s = [{'Done' }
{'verify' }
{'Done' }
{'backlog' }
{'verify' }
{'verify' }] ;
s = sort(s)
You can access that column using T.status, where T is your table and status is your column.

类别

Help CenterFile Exchange 中查找有关 Shifting and Sorting Matrices 的更多信息

产品


版本

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by