I have a unique dataset that has many columns and most columns contain both categorical and non-categorical data. For example, let's say that one column is attribute_1 and for observations that have data for attribute_1 the value can be between 100 and 1000. If an observation does not have data for attribute_1 then they are given a value between -4 and -1, where the value describes why they don't have data for this attribute.
How can I encode the categorical part of the columns while also applying feature scaling to the non-categorical part of the column? Would it make sense to split the column into two where one is the categorical and another column just for the non-categorical?