将数据分配到一个数据空间中
ages = [20, 22, 25, 27, 21, 23, 37, 31, 61, 45, 41, 32]
bins = [18, 25, 35, 60, 100]
cats = pd.cut(ages, bins)
由bins可以得到四个空间,然后将ages中每一个数字放入合适的空间中
获得每个数据的空间名
cats.labels
获得总共划分了多少空间
cats.levels
查看每个空间有多少数据被划分进去
pd.value_counts(cats)
指定每个空间的开闭口的方位
pd.cut(ages, [18, 26, 36, 61, 100], right=False)
为空间命名
group_names = ['Youth', 'YoungAdult', 'MiddleAged', 'Senior']
pd.cut(ages, bins, labels=group_names)
将数据从大到小排序后等分为4份
data = np.random.rand(20)
pd.cut(data, 4, precision=2)
默认qcut()将数据n等分,可以同给给出累计分布值的方式对数据进行划分
data = np.random.randn(1000) # Normally distributed
cats = pd.qcut(data, 4) # Cut into quartiles
pd.value_counts(cats)
pd.qcut(data, [0, 0.1, 0.5, 0.9, 1.])