使用sql语句从RDS文件中读取

使用sql语句从RDS文件中读取,r,R,首先,我要说我是R的初学者,正在学习数据分析课程。 我们得到了一个非常大的RDS文件(~6mil obs.)来读取和执行计算。我们被告知要使用readRDS,正如你所能想象的,这需要永远的阅读。我只需要数据的一个子集,过去我使用read.csv.sql来限制我实际读取到程序中的内容。有没有办法限制我使用readRDS阅读的内容,或者有没有更好的方法? 这是RDS的标题 ## fips SCC Pollutant Emissions type year ## 4 09001

首先,我要说我是R的初学者,正在学习数据分析课程。 我们得到了一个非常大的RDS文件(~6mil obs.)来读取和执行计算。我们被告知要使用readRDS,正如你所能想象的,这需要永远的阅读。我只需要数据的一个子集,过去我使用read.csv.sql来限制我实际读取到程序中的内容。有没有办法限制我使用readRDS阅读的内容,或者有没有更好的方法? 这是RDS的标题

##     fips      SCC Pollutant Emissions  type year
## 4  09001 10100401  PM25-PRI    15.714 POINT 1999
## 8  09001 10100404  PM25-PRI   234.178 POINT 1999
## 12 09001 10100501  PM25-PRI     0.128 POINT 1999
## 16 09001 10200401  PM25-PRI     2.036 POINT 1999
## 20 09001 10200504  PM25-PRI     0.388 POINT 1999
## 24 09001 10200602  PM25-PRI     1.490 POINT 1999
我只需要fips==“24510”的行

以下是完整的脚本:

NEI <- readRDS("summarySCC_PM25.rds")
SCC <- readRDS("Source_Classification_Code.rds")

# Aggregate data for just Baltimore
city <- subset(NEI, fips == "24510")
totalPM <- tapply(city$Emissions, city$year, sum)
png(filename='plot2.png')
#Plot data
barplot(totalPM, main=expression('Total Emission of PM for Baltimore'[2.5]),
        xlab='Year', ylab=expression(paste('PM', ''[2.5], ' in Kilotons')))

dev.off()

NEI
readRDS
究竟需要多长时间?我创建了一个约600万行的
data.frame
,结构与上面所示相同,用
saveRDS
保存,然后用
readRDS
读回,大约需要6.5秒。也许我需要换电脑。整个脚本(大约8行,排序函数和tapply to aggregate)大约需要6分钟。然后您应该发布整个脚本,因为问题很可能不在
readRDS
中。我编辑了初始问题以包含所有代码,谢谢!