如何在R中导入.wav格式音频并解决路径识别不存在报错问题
R读取wav文件路径报错解决方案
报错核心原因:readWave() 提示文件不存在,是因为R的当前工作目录与你存储音频文件的目录不匹配,R无法通过你填写的相对路径定位到目标文件。你可以通过以下三种方法解决:
方法1:切换工作目录到音频所在文件夹
先找到你存储file_example.wav的文件夹的完整路径,再运行以下代码:# 替换引号内路径为你自己的音频文件夹路径 setwd("C:/Users/用户名/Documents/音频文件夹") # 执行后会输出当前工作目录,确认和你音频存放的路径一致即可 getwd() # 后续读取代码和你原有逻辑一致 library(tuneR) file_audio_path <- "file_example.wav" train_audio <- readWave(file_audio_path) str(train_audio)注意:路径分隔符请使用正斜杠
/,如果使用Windows系统默认的反斜杠\需要写两个\\进行转义,否则会识别为转义字符导致路径错误。方法2:直接填写音频文件的绝对路径
不需要切换工作目录,直接把音频文件的完整路径赋值给路径变量即可:library(tuneR) # 替换为你自己的音频文件完整路径 file_audio_path <- "C:/Users/用户名/Documents/音频文件夹/file_example.wav" train_audio <- readWave(file_audio_path) str(train_audio)方法3:手动选择文件(适合临时调试)
如果你使用Rstudio,可以用file.choose()函数弹出系统文件选择框,手动选中目标文件,无需手动写路径:library(tuneR) # 运行后弹出文件选择窗口,手动选中你要读取的wav文件即可 file_audio_path <- file.choose() train_audio <- readWave(file_audio_path) str(train_audio)
路径有效性验证
修改路径后可以先运行以下代码验证路径是否正确:
file.exists(file_audio_path)
返回TRUE说明路径可被R正常识别,返回FALSE则需要检查路径中的文件名、后缀、分隔符是否填写错误。
另外你原有代码中加载的readr库和读取wav文件无关,可省略加载。
内容的提问来源于stack exchange,提问作者Kami
相关产品推荐
相关产品推荐

