将声学指标应用于R中的波对象列表的每个分量

问题描述

由于我对R非常缺乏经验,因此我对这个问题的措词表示歉意。

我正在寻求将一个计算四个声学指数(H f ,AEI,ACI和NDSI)的函数应用于55个60秒波对象的列表。我发现了将功能应用于wav的代码文件,但是我很难更改代码以使其适用于列表的每个组件而不是wav。文件

这是我正在尝试计算的代码

indices <- function(x) {
  x <- readWave(x)
  return(c(sh(meanspec(x,plot=FALSE)),acoustic_evenness(x) $aei_left,ACI(x),NDSI(soundscapespec(x,plot=FALSE))
           )
         )
}

# create data frame for indices to be recorded
n <- length(hodsubsamps0820_000000)
num <- rep (NA,n)
res <- data.frame(Hf=num,AEI=num,ACI=num,NDSI=num)

#use function on each list component
for (i in 1:n) res[i,] <- indices(hodsubsamps0820_000000[i])

出现此错误代码

 Error in readWave(x) : 'filename' must be of type character. 

毫无疑问,这个问题对于甚至对R稍有能力的人来说都是微不足道的,但是我是新手,并且发现它的学习曲线陡峭!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)