我已经通过使用以下命令获得了表格和直方图:
> csvfile=read.csv("https://archive.ics.uci.edu/ml/machine-learning-databases/wine-quality/winequality-red.csv", sep=";")
> hist(csvfile$fixed.acidity)
直方图:
现在,我需要找到该直方图中落入bin(7,8]的观测值的数量
我写了一个函数:
num=0
for(i in fixedacidity)
{
if((i>7)&(i<=8))
{
num<-num+1
}
}
print(num)
但有一条警告消息:
Warning message:
In if ((i > 7) & (i <= 8)) { :
the condition has length > 1 and only the first element will be used
我的代码有什么问题,并且库中有要做的事情?
答案 0 :(得分:2)
将hist()
与参数plot=FALSE
一起使用:
hist(x=1:100, breaks=10, plot=FALSE)
这将返回一个列表。您要查找的数据在列表元素counts
中:
hist(...)$counts
在您的特定情况下,这是:
hist(csvfile$fixed.acidity, plot=F)$counts[4]
答案 1 :(得分:1)
或者,可以使用tidyverse获取所有组中的观察次数:
Class MyClass
{
[String]$foo
[int]$bar
}
Class MyClassList : System.Collections.Generic.List[MyClass]
{
}
答案 2 :(得分:0)
执行此操作并获取所有bin(bin长度为1)的观测次数的另一种方法:
require(tidyverse)
csvfile %>% count(interval = cut_interval(fixed.acidity,length = 1))
答案 3 :(得分:0)