R语言加载CSV数据集时遭遇无法打开文件连接错误的技术求助
解决R语言加载Divvy骑行数据集时的文件连接错误
看起来你在批量加载Divvy骑行CSV数据时碰到了文件找不到的问题,这个错误的核心原因是R无法定位到你指定路径下的目标文件,下面是具体的排查和解决步骤:
1. 先确认文件路径是否正确
首先,你可以先运行getwd()命令查看当前R的工作目录,搞清楚../input/Excel/这个相对路径实际指向的位置。比如如果你的工作目录是~/Documents/R_Projects,那么../input/Excel/会指向~/Documents/input/Excel/,你需要手动确认这个文件夹里确实存在202006-divvy-tripdata.csv以及其他你要加载的文件。
如果相对路径容易搞混,建议直接使用绝对路径来加载文件,比如:
tripdata_2020_06 <- read.csv("/Users/yourname/Documents/input/Excel/202006-divvy-tripdata.csv")
绝对路径能彻底避免相对路径带来的定位问题。
2. 检查文件名是否完全匹配
仔细核对报错的文件名202006-divvy-tripdata.csv,看看实际文件有没有这些问题:
- 大小写不一致(比如Linux/macOS系统区分文件名大小写,
202006-Divvy-Tripdata.csv和代码里的文件名就不匹配) - 文件名末尾或开头有额外的空格
- 文件后缀不是
.csv(比如被误保存成.txt或者.CSV)
3. 用批量加载代码简化操作并排查问题
你现在的代码是逐个加载文件,不仅重复,也不容易快速定位问题。可以用循环批量处理,还能先确认所有目标文件都被识别:
# 设置文件所在的文件夹路径 folder_path <- "../input/Excel/" # 获取文件夹内所有符合命名规则的Divvy CSV文件 file_list <- list.files(path = folder_path, pattern = "divvy-tripdata.csv$", full.names = TRUE) # 打印找到的文件列表,检查是否包含所有需要的文件 print(file_list) # 批量加载所有文件到一个列表中 tripdata_list <- lapply(file_list, read.csv) # 如果需要将所有数据合并成一个数据框 combined_tripdata <- do.call(rbind, tripdata_list)
运行这段代码后,先看print(file_list)的输出,如果某个文件没出现在列表里,就说明要么路径错了,要么文件名不符合规则,能快速定位问题。
4. 检查文件权限(仅Linux/macOS用户)
如果你用的是Linux或macOS系统,还要确保R有读取该文件的权限。可以在终端运行以下命令修改文件权限:
chmod 644 ../input/Excel/202006-divvy-tripdata.csv
内容的提问来源于stack exchange,提问作者Nasser Rafei
相关产品推荐
相关产品推荐

