以下是一个例子:
^[a-zA-Z0-9=_\/+-]+$
所有这些S4方法都很相似,它们的区别仅在于某些文件扩展名:bim,fam和frq。我想知道是否有一些元拓扑技术可用于简化它们(以编程方式生成它们)?
答案 0 :(得分:0)
我找到了一个解决方案:
loadPlinkMeta = gtools::defmacro(ext, method_name, expr = {
setGeneric(method_name,
function(pl_info, ...) {
standardGeneric(method_name)
})
setMethod(method_name,
signature(pl_info = "PlInfo"),
function(pl_info) {
loadFFDF(pl_info@ff_dir_trio[ext])
})
})
loadPlinkMeta("bim", "loadBim")
loadPlinkMeta("fam", "loadFam")
loadPlinkMeta("frq", "loadFrq")