绝对值中具有lt/gt值的壮举的数据标准化



我正在处理的一个数据集几乎没有具有lt/gt值和绝对值的特征。请参考以下示例 -

>>> df = pd.DataFrame(['<10', '23', '34', '22', '>90', '42'], columns=['foo'])
>>> df
foo
0  <10
1   23
2   34
3   22
4  >90
5   42

注意 - foo 是 % 值。即 0 <= foo <= 100

如何转换这些数据以运行回归模型?

您可以做的一件事是,对于值 <10,插补中值 (5(。同样,对于那些>90,估算95。

然后添加两个额外的布尔列:

df = pd.DataFrame(['<10', '23', '34', '22', '>90', '42'], columns=['foo'])
dummies = pd.get_dummies(df, columns=['foo'])[['foo_<10', 'foo_>90']]
df = df.replace('<10', 5).replace('>90', 95)
df = pd.concat([df, dummies], axis=1)
df

这会给你

foo  foo_<10  foo_>90
0   5        1        0
1  23        0        0
2  34        0        0
3  22        0        0
4  95        0        1
5  42        0        0

最新更新