通过使用中断和分位数在数据框中动态创建Bins失败?

雨果·考普曼斯(Hugo Koopmans)

编辑:我在共享的先前代码中犯了一个错误。我用“ b”代替了“箱”,但是错过了一个。

我现在也使用正确的data.frame(y而不是原始的df.score)

新代码:

# some data
x <- runif(1000)
x2 <- rnorm(1000)
y <- data.frame(x,x2)
# we want to bin the dataframe y acording to values in x into b bins
b = 10
bins=10

# we create breaks in several ways
breaks=unique(quantile(x, probs=seq.int(0,1, by=1/b)))
breaks=unique(quantile(y$x, probs=seq.int(0,1, length.out=b+1)))

# now to the question
# this wokrs
y$b <- with(y, cut(x, breaks=unique(quantile(x, probs=seq.int(0,1, length.out=11))), include.lowest=TRUE))
table(y$b)
# this works too
y$b2 <- with(y, cut(x, breaks=unique(quantile(x, probs=seq.int(0,1, length.out=(bins+1)))), include.lowest=TRUE))
table(y$b2)
# this does not work
y$b3 <- with(y, cut(x, breaks=unique(quantile(x, probs=seq.int(0,1, length.out=(b+1)))), include.lowest=TRUE))

seq.int(0,1,length.out =(b + 1))中的错误:'length.out'必须为非负数另外:警告消息:在Ops.factor(b,1)中:+对因素没有意义

现在,如果我拆分代码,就没有问题了!!!

brks=unique(quantile(x, probs=seq.int(0,1, length.out=(b + 1))))
y$b3 <- with(y, cut(x, breaks=brks, include.lowest=TRUE))

我在这里迷路了...

这是更多动态代码的一部分,这些代码根据数据集中的详细信息编织在一起。

因此,我想即时创建垃圾箱并对其进行报告。该代码现在可以工作,但是我不明白为什么当我使用“ bins”一词时代码可以工作,而当使用“ b”时却失败了...?


从这里开始,我需要将bin动态添加到数据框,以便稍后对其进行报告。

# some data
x <- runif(1000)
x2 <- rnorm(1000)
y <- data.frame(x,x2)
# we want to bin the dataframe y acording to values in x into b bins
b = 10

# we create breaks in several ways
breaks=unique(quantile(x, probs=seq.int(0,1, by=1/b)))
breaks=unique(quantile(y$x, probs=seq.int(0,1, length.out=b+1)))

# now to question
# this works

y$bins <- with(df.score, cut(x, breaks=unique(quantile(Pchurn, probs=seq.int(0,1, length.out=11))), include.lowest=TRUE))
table(y$bins)

因此,如果我想直接使用bin var进行完全相同的操作,它将失败:

# this does not work
y$bins <- with(df.score, cut(x, breaks=unique(quantile(Pchurn, probs=seq.int(0,1, length.out=bins+1))), include.lowest=TRUE))


Error in seq.int(0, 1, length.out = (bins + 1)) : 
  'length.out' must be a non-negative number
In addition: Warning message:
In Ops.factor(bins, 1) : + not meaningful for factors

我在这里想念什么?

红外光谱

我想你想这个(代b用于bins在长度参数计算仅低于“#这不工作”:

y$bins <- with(df.score, cut(x, 
                    breaks=unique(quantile(Pchurn, 
                                         probs=seq.int(0,1, length.out=b+1))), 
                    include.lowest=TRUE))

没有分数变量和目标的更完整描述就很难测试,但是至少代码不会在工作空间中引发错误。

 df.score=data.frame(Pchurn=rnorm(100), x=rnorm(100))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

通过基于R?中的分位数来分配值,从而在数据框中生成新列。

来自分类Dev

使用 udf 和递归在数据框中创建新列

来自分类Dev

使用单个采样命令在数据框中创建多行

来自分类Dev

使用Fuzzywuzzy在数据框中创建新列

来自分类Dev

使用 for 循环在数据框中创建变量

来自分类Dev

在数据框中动态拆分行

来自分类Dev

在数据框中动态拆分行

来自分类Dev

在数据框中定义一个分位数组,在R中另一个数据框中定义数据源

来自分类Dev

我想使用数据框中的dict值在数据框中创建一列

来自分类Dev

在数据框R中动态创建列,并根据其他列条件进行填充

来自分类Dev

分位数的数据框或矩阵

来自分类Dev

通过在数据表中动态创建列名进行计算

来自分类Dev

通过分配在数据框r中创建新列

来自分类Dev

使用Scala中数据框中的现有数据在数据框中创建arraytype列

来自分类Dev

Python-在数据框中使用年和月创建新列

来自分类Dev

如何使用 Python 中的分位数数据估计 logNormal 分布的 mu 和 sigma 参数

来自分类Dev

数据框中每一列和每一行的百分位数

来自分类Dev

如何使用python中的循环在数据框中创建新列

来自分类Dev

在数据框中计算和删除/创建列

来自分类Dev

使用 R,如何使用现有数据框中列的中位数创建新数据集?

来自分类Dev

通过从 R 中的某个值开始的字符串变量在数据框中创建组变量

来自分类Dev

R-使用带for循环的其他变量在数据框中创建变量

来自分类Dev

使用熊猫在数据框中创建带整数的字符串

来自分类Dev

使用地图或函数在数据框中创建新列

来自分类Dev

使用np.vectorize在数据框中创建一列

来自分类Dev

在熊猫中使用自定义聚合函数在数据框中创建新列

来自分类Dev

Python Pandas:使用三个不同的值在数据框中创建一列

来自分类Dev

使用字典映射在数据框中创建新列

来自分类Dev

R-使用带有for循环的其他变量在数据框中创建变量

Related 相关文章

  1. 1

    通过基于R?中的分位数来分配值,从而在数据框中生成新列。

  2. 2

    使用 udf 和递归在数据框中创建新列

  3. 3

    使用单个采样命令在数据框中创建多行

  4. 4

    使用Fuzzywuzzy在数据框中创建新列

  5. 5

    使用 for 循环在数据框中创建变量

  6. 6

    在数据框中动态拆分行

  7. 7

    在数据框中动态拆分行

  8. 8

    在数据框中定义一个分位数组,在R中另一个数据框中定义数据源

  9. 9

    我想使用数据框中的dict值在数据框中创建一列

  10. 10

    在数据框R中动态创建列,并根据其他列条件进行填充

  11. 11

    分位数的数据框或矩阵

  12. 12

    通过在数据表中动态创建列名进行计算

  13. 13

    通过分配在数据框r中创建新列

  14. 14

    使用Scala中数据框中的现有数据在数据框中创建arraytype列

  15. 15

    Python-在数据框中使用年和月创建新列

  16. 16

    如何使用 Python 中的分位数数据估计 logNormal 分布的 mu 和 sigma 参数

  17. 17

    数据框中每一列和每一行的百分位数

  18. 18

    如何使用python中的循环在数据框中创建新列

  19. 19

    在数据框中计算和删除/创建列

  20. 20

    使用 R,如何使用现有数据框中列的中位数创建新数据集?

  21. 21

    通过从 R 中的某个值开始的字符串变量在数据框中创建组变量

  22. 22

    R-使用带for循环的其他变量在数据框中创建变量

  23. 23

    使用熊猫在数据框中创建带整数的字符串

  24. 24

    使用地图或函数在数据框中创建新列

  25. 25

    使用np.vectorize在数据框中创建一列

  26. 26

    在熊猫中使用自定义聚合函数在数据框中创建新列

  27. 27

    Python Pandas:使用三个不同的值在数据框中创建一列

  28. 28

    使用字典映射在数据框中创建新列

  29. 29

    R-使用带有for循环的其他变量在数据框中创建变量

热门标签

归档