Cant convert more than 80 columns of data to categorical

1 visualización (últimos 30 días)
SkarletSam
SkarletSam el 29 de Nov. de 2020
Comentada: SkarletSam el 29 de Nov. de 2020
I am trying to convert all coloumns of a 1000x170 table to categorical data. "bt_000" would be the 81st coloumn.
It would seem that the function does not work after the 80th coloumn, any remedies?
Thank you.
  1 comentario
dpb
dpb el 29 de Nov. de 2020
It's not the number or the postion but the content of the column that's the problem, methinks.
Bet it will error the same way if you try that column alone.

Iniciar sesión para comentar.

Respuesta aceptada

Walter Roberson
Walter Roberson el 29 de Nov. de 2020
When you categorical() numeric values, then internally it uses %-0.5g format to convert the values to character vectors. It then errors if the number of unique values that result is different than the number of unique numbers.
Which is to say that when you categorical() numeric values, it is a problem if two of the unique values are the same up to the 5th decimal digit.
  3 comentarios
dpb
dpb el 29 de Nov. de 2020
That doesn't say it errors because of it, though...that's probably worth a documentation addendum note (not that anybody ever actually reads the doc first).
SkarletSam
SkarletSam el 29 de Nov. de 2020
Seems like fuzziness with the categorical was the root of the problem. There were some columns that had large numbers that were really close to each other in numeric value. Took those out and the varfun worked. I discretized the columns that didnt work inidividually and added onto the newTable. Thanks for the input!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Productos


Versión

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by