【发布时间】:2018-11-28 15:47:26
【问题描述】:
Dataframe chocolates 列出了糖果的类型和每种糖果的一组评级:
ID sweetness filling crash
snickers 0.67 0.55 0.40
milky_way 0.81 0.53 0.56
...
我正在编写一个函数,它接受文件名的参数、特定类型糖果的 ID 和我感兴趣的分数(sweetness、filling 或 crash)并返回该文件中特定糖果的特定分数。例如,如果我想要ID“snickers”的sweetness 评级(如下文所示)......
> chocolates$sweetness[chocolates$ID=="snickers"]
[1] 0.67
...一些函数candyranks(data=, ID=, score=) 应该返回相同的值。这是我写的:
candyranks <- function(data, id, score){
data$score[chocolates$ID=="snickers"]
}
但是candyranks(data=chocolates, ID = "snickers", score = sweetness) 返回值NULL。我已经确定 ID 是一个字符向量。关于为什么它不会返回 0.67 值的任何想法?
【问题讨论】:
-
在函数内部使用
[[而不是$,即data[[score]][chocolates$ID == "snickers"]
标签: r string function arguments