split()函数不能嵌入另一个函数中

时间:2016-12-08 14:18:57

标签: r function split

我想编写一个名为state的状态缩写作为唯一输入变量的函数。

该功能应该......

  • 使用read.csv()
  • 读取某个csv文件
  • 使用split()
  • 的州缩写将数据框拆分
  • 仅返回状态缩写为state
  • 的数据

我知道这是一种过滤功能,但我明确希望使用split功能。

这是我的代码:

best <- function(state) {

## Read the data 
data <- read.csv("outcome-of-care-measures.csv", colClasses = "character")

## Split data up by the 'State' column
data_split <- split(data, data$State)

## Return data with state in 'State' column
data_split$state

}

## Executing the function
best("NY") ## returns NULL

当我在不使用函数的情况下执行这些行时,它正在工作。所以我认为在state中将输入变量data_split$state作为参数存在问题。

感谢您的帮助。

祝福, 马库斯

1 个答案:

答案 0 :(得分:1)

您可以尝试使用:

data_split[[state]]

完整代码:

best <- function(state) {
    data <- read.csv("outcome-of-care-measures.csv", colClasses = "character")
    # split data on the _column_ called 'State'
    data_split <- split(data, data$State)
    # return the entry in the list whose _name_ is contained in 'state'
    data_split[[state]]
}