Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 计算时间范围内峰值数的错误消息_R_Count_Sum - Fatal编程技术网

R 计算时间范围内峰值数的错误消息

R 计算时间范围内峰值数的错误消息,r,count,sum,R,Count,Sum,我使用以下代码计算两个时间点之间的峰值数: sum(peaks>=1 & peaks<=25) x和y变量都是数字,所以我不确定为什么会收到这个错误消息。这是一些示例数据的摘录: 0 0 1 0 2 0 3 0 4 0 5 14.6464 6 14.6464 7 14.6464 8 14.6464 9 16.7139 10 20.8488 11 20.8488 12 19.0305 13 15.3939 14 15.

我使用以下代码计算两个时间点之间的峰值数:

sum(peaks>=1 & peaks<=25)
x和y变量都是数字,所以我不确定为什么会收到这个错误消息。这是一些示例数据的摘录:

0   0    
1   0
2   0
3   0
4   0
5   14.6464
6   14.6464
7   14.6464
8   14.6464
9   16.7139
10  20.8488
11  20.8488
12  19.0305
13  15.3939
14  15.3939
15  15.3939
16  15.0954
17  14.4985
18  14.4985
19  14.4985
20  15.2851
21  16.8582
22  16.8582
23  16.796
24  16.6715
25  16.6715

我已经对此进行了研究,但其他错误消息的原因尚未应用于或。

您不能以这种方式使用函数。 这些比较用于子集数据,不能应用于函数

你现在所做的相当于

read.csv == 1
这将产生相同的错误,显然没有任何意义

以实现查找数据峰值的目标。你应该试试下面的方法

这将创建一些与示例类似的数据—假设您有一个数据帧

x = c(0:25)
y = runif(26, 0, 30)
data = data.frame(x = x, y = y)
在这里,我们可以看到x的指数大于10,y的指数大于15。真实的意思是他们符合标准,虚假的意思是他们不符合标准。在R中,我们可以使用T/F作为数据子集的工具

data$x >= 10
data$y <= 15
数据$x>=10

data$y=10&data$y您需要说明您正在进行的子集,然后将
sum
应用于该子集。一般形式为〈代码〉和(某物的向量〔某物的向量〕=1和某物的向量=1&df$某物的向量=1和某物的向量_else@Pascal谢谢您的回复。子集之间有什么不同?总和(df$peak[df$peak>=1&df$peak您能提供更多信息吗?比如您提到的x和y,它们中的哪一个是峰值?或者峰值是数据帧,您想找到数据帧中位于两个指定值之间的所有值吗?@SamPassmore峰值是我根据y创建的一个函数,称为峰值。x是秒。x和y是原始值最终数据。如果峰值是一个函数,那么这就是您的问题。您不能以这种方式使用函数。我已经用此信息复制了您的问题。我有数据峰值,我正在尝试计算一个时间范围内的峰值数。
data$x >= 10
data$y <= 15
data$x >= 10 & data$y <= 15
sum(data$x >= 10 & data$y <= 15)
subset(data, x >= 10 & y <= 15)