请注意,当您将pandas.cut输入到数据框中时,您会在输出中获得每个元素的bin:Name:,Length:,dtype:和Categories。我只希望为我打印Categories数组,这样我就可以获取我要查找的垃圾箱数量范围。例如,在将bins = 4输入到数字“ 1,2,3,4,5”的数据框中时,我希望输出仅打印四个bins的范围,即(1、2],(2, 3],(3、4],(4、5]。
反正我可以这样做吗?即使不需要打印“类别”,它也可以是任何东西。
答案 0 :(得分:1)
我猜您只是想从str[1:]
获取'bins'。
如果是这样,您只需设置str[:-1]
,请参见the doc of pd.cut
例如:
在[01]中:
pd.cut()
出[01]:
retbins=True
:
data = pd.DataFrame({'a': [1, 2, 3, 4, 5]})
cats, bins = pd.cut(data.a, 4, retbins=True)
cats
:
0 (0.996, 2.0]
1 (0.996, 2.0]
2 (2.0, 3.0]
3 (3.0, 4.0]
4 (4.0, 5.0]
Name: a, dtype: category
Categories (4, interval[float64]): [(0.996, 2.0] < (2.0, 3.0] < (3.0, 4.0] < (4.0, 5.0]]
然后,您可以根据需要重复使用bins
。
例如,
array([0.996, 2. , 3. , 4. , 5. ])
答案 1 :(得分:0)
您可以使用.categories.format()
:
pd.cut(np.arange(1,6), 4).categories.format()
[出]
['(0.996, 2.0]', '(2.0, 3.0]', '(3.0, 4.0]', '(4.0, 5.0]']