首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果花色是红心,我如何使用substr()来扩展一个卡片矢量?

如果花色是红心,我如何使用substr()来扩展一个卡片矢量?
EN

Stack Overflow用户
提问于 2021-02-09 13:23:11
回答 1查看 30关注 0票数 1

我正在写一个函数,它从一副牌中随机选择10张牌,然后我必须计算这套红心牌有多少张。我坚持使用substr(),因为我们被告知它可以帮助我们,但我不知道如何正确使用它。

卡片向量是

代码语言:javascript
复制
cards <- 
  paste0(c("A", "2", "3", "4", "5", "6", "7", "8", "9", "T", "J", "Q", "K"),
         rep(c("H", "C", "S", "D"), each = 13))

到目前为止我所做的

代码语言:javascript
复制
drawCard <- function(x){
  
 x <- sample(cards, x, replace = F)
  
  
 print(x)
 

 heartCount <- length(substr((" H"),2,2))
 
 print(heartCount)
 

}


drawCard(10)

它在全球范围内都有效,但我似乎不能随意选择我选择的卡片。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-09 13:49:56

这会给你你想要的。我修改了您的函数,使其具有两个参数dfnsample。这个想法是你首先substr你的样本卡片的第二个字符,然后你需要检查他们是否是"H“(==)。最后,使用sum来计算有多少是"H“。

代码语言:javascript
复制
drawCard <- function(df, nsample){
  sample <- sample(df, nsample, replace = F)
  heartCount <- sum((substr(sample, 2, 2) == "H"))
  # print(sample) 
  return(heartCount)
}

drawCard(cards, 10)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66113438

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档