r - R:从两列创建整数数组,然后绘制直方图
问题描述
我有一个包含 2 个数字列的数据框。对于每一行,我想创建一个整数数组,该数组位于列中的值之间,并且包括列中的值。然后,我想将所有值编译到单个列中以生成直方图。
输入:
df
C1 C2
A 3 -92
B 8 -162
C 20 -97
D 50 -76
输出:
sdf5$Values
-92
-91
-90
...
2
3
-162
-161
...
7
8
...
我的实际数据框有 62 行。我当前的代码给了我 > 100 的频率(对于任何整数,最多应该有 62)。该代码在一个虚拟数据帧上工作,所以我不确定哪里出了问题。
list <- mapply(":", df$C2, df$C1)
df3 <- do.call(rbind.data.frame, list)
sdf3 <- stack(df3)
sdf4 <- as.data.frame(sdf3$values)
sdf5 <- rename(sdf4, Values = 1)
a <- ggplot(sdf5, aes(x=Values)) +
geom_histogram(binwidth = 1, center=0)
解决方案
我不确定到底出了什么问题,但我认为这rbind.data.frame
会导致列表输入出现一些问题。作为备选:
library(ggplot2)
df <- read.table(text = " C1 C2
A 3 -92
B 8 -162
C 20 -97
D 50 -76")
list <- mapply(":", df$C2, df$C1)
df2 <- data.frame(Values = do.call(c, list))
ggplot(df2, aes(x=Values)) +
geom_histogram(binwidth = 1, center=0)
由reprex 包于 2021-02-08 创建(v1.0.0)
推荐阅读
- java - 如何忽略 lombok @EqualsAndHashCode 的声纳“未覆盖条件”
- dotnetnuke - 2sxc:链接到权限锁定的资源
- c# - UWP - 对从用户选取的文件中引用的附加文件的文件访问
- c++ - 递归回文问题的时间复杂度,C++
- python - 为什么 PANDAS 只看到一列到多列的 csv 数据集?
- javascript - 将第一个 js 函数链接到第二个 js 函数,当第二个延迟返回值时
- python - 将组合框中的选定项目连接到pyqt5中的一行
- node.js - 是否可以在 nodejs 中释放所需的模块?
- javascript - 是否有另一种基于 html5 数据属性显示/隐藏字段的方法?
- java - 杰克逊反序列化错误:com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException:无法识别的字段