使用python如何在序数中转换数字数据?

时间:2017-03-14 12:03:07

标签: python scikit-learn ordinal

数据:

118.6
109.7
126.7
107.8
113.9
109.7
109.7
98.2
112.3
153.7
157.8
85
126.7
125.1
155.4
138.5
154.6
189.9
120.6
101.6
128.7
138.5
210.8
124.4
189.8
122.5
161.7
188.6
229.1
168.7
233.7
137.5
126.6
244.4
141.9
227.5
183
177.6
244.4
95.1
116.4
75.9
75.3
109.8
117.1
75.9
109.8
71.2
71.3
89.6
93.3
84.7
85
82.9
145.3
107.7
84.2
96.7
89.8
86.2
85
89.6
67.5
64.9
48.1
54.9
56.1
60.6
51
44.6
64.3
57.6
66.2
69
60
70.2
65.4
60.1
49.4
61.4
62.8
78.8
70.3
82.7
68.6

我想将此数字数据转换为序数。

示例:
如果数据值在60到69.9之间,那么它将显示1。

如果数据值在70到79.9之间,那么它将显示2。

如果数据值在80到89.9之间,那么它将显示3。

如果数据值在90到99.9之间,那么它将显示4.依此类推。

我知道如何使用binaryX = binarizer.transform(X)对数据进行二值化 但我不知道如何在单个序数值中转换数值区间值。

1 个答案:

答案 0 :(得分:3)

如何除以10,减去偏移?

$a = gd_info();
echo '<pre>' . print_r($a,1) . '</pre>';

或者,如果您使用的是NumPy

data = ['60', '69.9', '70', '73', '80']
[int((float(a) // 10) - 5) for a in data]                          # [1, 1, 2, 2, 3]