python pd.cut,

  python pd.cut,

  本文主要介绍python使用pd.cut()和pd.qcut()对数据进行分箱。通过示例代码详细介绍,对大家的学习或工作有一定的参考价值。让我们和边肖一起学习。

  00-1010 1.Cut()可以实现类似成绩优秀统计的功能。让我们看看代码示例。2.qcut()可以生成指定数量的盒子,然后使每个盒子的数据量相同。

  

目录

 

  如果我们有一组学生的成绩,我们需要把他们分为不及格(0-59),及格(60-70),良好(71-85),优秀(86-100)。此时可以使用cut()。

  将numpy作为np导入

  进口熊猫作为pd

  #我们先传30个从0到100的随机数到分数。

  分数=np.random.uniform(0,100,大小=30)

  #然后使用np.round()函数控制数据精度

  分数=np.round(分数,1)

  #指定框的间隔。

  等级=[0,59,70,85,100]

  cuts=pd.cut(分数,等级)

  打印( nscores: )

  打印(分数)

  打印( ncuts: )

  打印(剪切)

  #我们还可以算出每个盒子里有多少数据

  打印( ncats.value_counts: )

  打印(pd.value_counts(cuts))

  ======output:======

  分数:

  [ 6.50.8 80.2 22.1 60.1 75.1 30.8 50.8 81.6 17.4 13.4 24.3 67.3 84.4

  63.4 21.3 17.2 3.7 40.1 12.4 15.7 23.1 67.4 94.8 72.6 12.8 81.82.

  70.2 54.1]

  切割:

  [(0, 59], (0, 59], (70, 85], (0, 59], (59, 70], (0, 59], (70, 85], (70, 85], (70, 85], (0, 59]]

  长度: 30

  Categories (4,interval[int64]): [(0,59)(59,70)(70,85)(85,100])

  cuts.value_counts:

  (0, 59] 17

  (70, 85] 8

  (59, 70] 4

  (85, 100] 1

  dtype: int64

  默认情况下,cat()的音程划分是左开右闭。你可以通过right=False来改变哪边是封闭的。

  代码示例:

  cuts=pd.cut(分数,等级,右=假)

  您也可以通过向labels选项传递一个列表或数组来传递自定义框名。

  代码示例:

  Group_names=[失败,通过,良好,优秀]

  cuts=pd.cut(分数、等级、标签=group_names)

  当我们不需要自己定义区间时,就需要根据数据中的最大值和最小值来计算等长的盒子。

  代码示例:

  #将分数平均分在四个方框中,precision=2选项会将精度控制在两位数。

  cuts=pd.cut(分数,4,精度=2)

  

1.cut()可以实现类似于对成绩进行优良统计的功能,来看代码示例。

 

  代码示例:

  将numpy作为np导入

  进口熊猫作为pd

  #正态分布

  data=np.random.randn(100)

  #分成四个盒子

  cuts=pd.qcut(data,4)

  打印( ncuts: )

  打印(剪切)

  打印( ncuts.value_counts: )

  打印(pd.value_counts(cuts))

  ======output:======

  切割:

  [(-0.745, -0.0723], (0.889, 2.834], (-0.745, -0.0723], (0.889, 2.834], (0.889, 2.834], (-0.745, -0.0723], (-0.0723, 0.889], (-3.1599999999999997, -0.745], (-0.745, -0.0723], (-0.0723, 0.889]]

  长度: 100

  类别(4,区间[float 64]):[(-3.159999999999997,-0.745] (-0.745,-0.0723)(-0.0723,0.889]

  (0.889, 2.834]]

  cuts.value_counts:

  (0.889, 2.834] 25

  (-0.0723, 0.889] 25

  (-0.745, -0.0723] 25

  (-3.1599999999999997, -0.745] 25

  dtype: int64

  关于python用pd.cut()和pd.qcut()对数据进行宁滨操作的这篇文章到此为止。关于python pd.cut()和pd.qcut()的宁滨操作的更多信息,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: