【问题标题】:Creating a function to extract a value from a data frame in R创建一个函数以从 R 中的数据框中提取值
【发布时间】:2021-07-23 04:29:34
【问题描述】:

我有一个名为data 的数据框,其中包含密码的名称及其值。我还有以下功能:

for(i in 1) {
  x <- data$id[i] #id is the column with crypto names (such as "bitcoin")
  c1 <- data[data$id == x,5] #5 is the column with values
}
c1 #returns the value of a crypto

对于i in 1,它返回第一个加密的值,对于i in 2,它返回第二个加密的值,依此类推。

我想创建一个函数,通过输入其名称(id)从列表中返回任何加密货币的值,这样它就可以像这样工作:

function("bitcoin")
#Returns the value of a crypto just like c1 above

请让我知道我该怎么做。

【问题讨论】:

    标签: r function loops for-loop while-loop


    【解决方案1】:

    带有一些玩具数据的简单解决方案:

    crypto <- data.frame(name=c("bitcoin","etherium","solana","polcadot","elrond"),value=c(50000,2500,34,27,147))
    
    crypto_values <- function(cryptoName){
      value <- crypto[crypto$name==cryptoName,"value"]
      return(value)
    }
    
    
    crypto_values("bitcoin")
    [1] 50000
    

    您必须确保输入正确的名称。

    记住 R 是区分大小写的,所以"bitcoin"! = "Bitcoin"

    另外,请注意,这个函数在这种形式下非常简单,但不费吹灰之力就可以改进,例如不区分大小写,或者使其更通用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-01
      • 2021-08-14
      • 1970-01-01
      • 2020-09-08
      • 2022-01-25
      • 1970-01-01
      • 2020-07-07
      • 1970-01-01
      相关资源
      最近更新 更多