我有两个文件中的数据。我想绘制一个图表,显示它们的频率比率。
例如,在我的文件中,1到5的数字出现20次。在我的文件B中,1到5的数字出现10次(直方图的条宽为5)。这两者的比例是20/10 = 2.我想在图表中绘制这个比率。可以用R完成吗?
答案 0 :(得分:4)
假设您已阅读变量data1
和data2
中的2个文件,您可以这样做:
bins <- seq(0, 100, 5) # Change this to whatever range your data encopasses
h1 <- hist(data1, bins, plot=0)
h2 <- hist(data2, bins, plot=0)
ratio <- h1$counts/h2$counts
# Remove NaNs and Infs due to 0 counts
ratio[is.na(ratio)] <- 0
ratio[is.inf(ratio)] <- 0
barplot(ratio)
或者,您可以创建第3个hist对象,其优点是可以正确绘制x轴
h3 <- h1
h3$counts <- ratio
plot(h3, col="black")