同时合并两列数据

Binning two columns of data simultaneously

我有两列数据,一列包含一组值,另一列包含相应的皮尔逊系数值(均为 41306329 长)。我想将我的数据分箱到第一列,以便落在设置分箱范围内的任何值也具有包含在这些分箱中的相应皮尔逊系数值。但是,一旦完成,我就想对这些皮尔逊系数值进行分类。例如,使用:-

column1 <- as.numeric(c("100.01", "100.015", "100.017", "100.071", "100.099", "100.111", "100.153", "100.167"))
column2 <- as.numeric(c("0.89", "0.64", "-0.14", "-0.79", "1", "0.31", "-0.27", "0.45"))
test <- cbind(column1, column2)
bin1 <- seq(100, 100.2, by = 0.05)
bin2 <- seq(-1, 1, by = 0.5)

我需要一种方法来对值进行分箱,以便在分箱之前获得 (100,100.05] (100.05,100.1] (100.1,100.15] (100.15,100.2]) 的分箱范围,其中的值落在各自的分箱内它们对应的皮尔逊系数值从 -1 到 +1,并从中生成一个 3D 散点图,该图使用皮尔逊系数值描述第一列中值的分布。实际上,它会生成一个值图(第 1 列) vs 皮尔逊系数(第 2 列)vs 频率。

图表看起来像这样:-

我希望这是有道理的!谢谢!

你可以试试

 res <- data.frame(Map(function(x,y) cut(x, breaks=y),
                    as.data.frame(test), list(bin1, bin2)))

 res1 <- cbind(test, res)