我想通过等效分区将数据帧列的连续值转换为离散值。
例如,下面是myinput
。在
我想把a
列中的连续值分成3个区间。在
Input:
import pandas as pd
import numpy as np
df = pd.DataFrame({'a':[1.1, 1.2, 1.3, 2.4, 2.5, 4.1]})
Output:
在a
列中,最小值是1.1,最大值是4.1
,我想把它分成3 intervals
。在
如您所见,每个间隔的大小等于(4.1-1.1)/3 = 1.0
。因此,我可以将[1.1, 2.1)
(大于或等于1.1
且小于2.1
)的所有值视为0
,将{1
,将{2
。在
这是我预期的结果。在
Expected:
a
0 0
1 0
2 0
3 1
4 1
5 2
您还可以使用
np.digitize
函数并定义容器的变体来分配标签输出:
^{pr2}$您可以将^{} 与参数
right = False
一起用作:装箱方式:
^{pr2}$让我们来做}
diff
和{相关问题 更多 >
编程相关推荐