r - 无法在 R 中的函数内操作全局/局部变量
问题描述
dna = c("A","G","C","T")
x =sample(dna,50,replace =TRUE)
dna_f = function(x){
dnastring <- ""
for (val in x){
paste(dnastring,val,sep="")
}
return(dnastring)
}
dna_f(x)
我正在尝试生成一个包含所有随机采样字母的字符串。x 包含所有 50 个字母,我试图使用粘贴功能将它们组合成一个字符串。但是当我运行它时,输出是一个空字符串。我尝试将 dnastring 作为全局变量,因为我认为函数的范围可能在 R 中运行不同(我是 R 新手),但我得到了相同的输出。一些帮助将不胜感激。
解决方案
你不需要for
在这里循环。尝试论证paste
。collapse
dna_f = function(x){
paste0(x, collapse = '')
}
dna_f(x)
#[1] "CCTACCAACCCTTTCTAGCCCACTATGCATCACAACTGCGGTCTCATCAC"
推荐阅读
- java - 如何保证线程在终止时安全地解锁锁,而所有方法都已经处理它?
- python - 在 R 中使用 Python 包(带有“网状”)
- html - 我如何将它移到顶部?
- sql - 在PGADMIN4 POSTGRESQL10.14中如何添加EXCEPTION子句
- rust - 为什么有些特质不能做成对象
- vue.js - 如何更新依赖于另一个状态异步数据的状态数据
- java - 升级到最新版本的 Java 库后,Stripe PaymentSource 未扩展
- java - Java 每月重复
- c# - 如何随机化 datagridview 中的列并将其保存回 txt 文件?(Visual Studio 窗体,.NET 框架)
- c++ - 如何将彩色文本存储在变量中?