r - 在R中动态读取excel数据
问题描述
我的主目录中有一个 excel 文件。我使用下面的代码读取 excel 文件
df <- read_excel("new_sd.xlsx", sheet = "Sheet1")
我想检查我们是否可以动态读取excel文件,类似于我们动态查询sql表的方式例如
我的excel有以下数据
Col1 Col2
1 A
2 A
3 B
在读取上述文件 ( df <- read_excel("new_sd.xlsx", sheet = "Sheet1")
) 时,我们只能导入 Col2 为 "A" 的数据吗) 。所以输出将是
df
Col1 Col2
1 A
2 A
解决方案
如果您想在读取时过滤数据,而不是在您可以使用read.csv.sql
from sqldf
which 接受 SQL 查询进行过滤后过滤,但它仅适用于 csv 数据并且无法读取 excel 文件。
如果您可以将 excel 转换为 csv,则可以使用它。
library(sqldf)
#Write the csv
#readr::write_csv(mtcars, 'mtcars.csv')
read.csv.sql('mtcars.csv', sql = 'select * from file where cyl = 6')
# mpg cyl disp hp drat wt qsec vs am gear carb
#1 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
#2 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
#3 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1
#4 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1
#5 19.2 6 167.6 123 3.92 3.440 18.30 1 0 4 4
#6 17.8 6 167.6 123 3.92 3.440 18.90 1 0 4 4
#7 19.7 6 145.0 175 3.62 2.770 15.50 0 1 5 6
推荐阅读
- json - 以角度 6 遍历 JSON 对象
- javascript - 如何在 Zabbix 的 popmenu 上添加自定义链接用于触发器?
- reactjs - 如何合并 ReactJS 项目 svelte?或者如何将 .svelte 文件插入到 ReactJs 项目中?
- git - Git错误:推送到裸仓库时远程解包失败
- sql - 在 SQL 中只有外键列的表是否正确?
- pandas - 将多行缩小为一行
- javascript - 使用 Sequelize 和 SQLITE 的聚合查询
- javascript - 如何使用 iframe 使网站响应屏幕尺寸
- python - 从列表创建基于 SEQUENCE 的字典
- java - Spring Boot Sql 日期时间戳 Json 序列化问题