Function 如何编写函数来提取特定数据?

Function 如何编写函数来提取特定数据?,function,extract,square-bracket,economics,Function,Extract,Square Bracket,Economics,我想写一个函数来绘制所需模型冰箱的每日价格。 下面是我的问题的一个小例子: data <- read.table(header=TRUE,text=' date price model 2012-01-01 100 Frenchdoor 2012-01-01 150 Bottom 2012-01-02 110 Frenchdoor 2012-01-02 160 Bottom ') 它不返回任何数据:(或0长度行。名称) 如果没有功能,它可以正常工作

我想写一个函数来绘制所需模型冰箱的每日价格。 下面是我的问题的一个小例子:

data <- read.table(header=TRUE,text='
date price model
    2012-01-01 100 Frenchdoor
    2012-01-01 150 Bottom
    2012-01-02 110 Frenchdoor
    2012-01-02 160 Bottom
    ')
它不返回任何数据:
(或
0长度行。名称

如果没有功能,它可以正常工作:

data <- data[data$model=='Frenchdoor',]
data

data我在上面的函数中看到两个问题

首先,将模型放在函数中的单引号中,就是向函数传递字符串“model”,而不是语句模型(Frenchdoor)中提供的参数值

其次,如果显式引用的是字符串,而不是R对象,则应该向函数传递字符串。所以,model(‘Frenchdoor’)可以工作,但model(Frenchdoor)不能

考虑以下修订:

data <-read.table(header=TRUE, text='
date price model
    2012-01-01 100 Frenchdoor
    2012-01-01 150 Bottom
    2012-01-02 110 Frenchdoor
    2012-01-02 160 Bottom
')

model <- function(model){
data <- data[data$model==model,]
return(data)
}
数据
data <- data[data$model=='Frenchdoor',]
data
data <-read.table(header=TRUE, text='
date price model
    2012-01-01 100 Frenchdoor
    2012-01-01 150 Bottom
    2012-01-02 110 Frenchdoor
    2012-01-02 160 Bottom
')

model <- function(model){
data <- data[data$model==model,]
return(data)
}
FilterByModel <- function(model){
data <- data[data$model==model,]
return(data)
}