我大部分时间都使用LETTER来表达我的因素,但今天我试图超过26个字符:
LETTERS[1:32]
Run Code Online (Sandbox Code Playgroud)
期待有一个自动递归分解AA,AB,AC ...但是很失望.这仅仅是LETTERS的限制还是有办法获得我正在寻找的另一个功能?
考虑我们已经调用debug()了几个函数来对它们进行断点.当我们找到并解决这个bug时,是否还有一个命令undebug()标记的所有函数debug()?
这是一个很好的基准,看看你提出的方法是否真的完美:
> library(limma) # bioconductor
> debug(read.ilmn)
> read.ilmn("a.txt") # No problem if this file does not exist
Browse[2]> debug(.read.oneilmnfile) # This is the debug browser for read.ilmn()
Browse[2]> Q # To exit debug browser
> undebug.all() # Here run your proposed function to undebug everything!
> read.ilmn("a.txt")
# Now if the debug browser is not started, you are lucky to pass this test!
Run Code Online (Sandbox Code Playgroud)
您可能会在下面看到接受的答案.任何情况下,这个答案不起作用,或更干净的版本是非常受欢迎的.
假设我有一个长字符串:
"XOVEWVJIEWNIGOIWENVOIWEWVWEW"
Run Code Online (Sandbox Code Playgroud)
如何拆分这个以获得每5个字符后跟一个空格?
"XOVEW VJIEW NIGOI WENVO IWEWV WEW"
Run Code Online (Sandbox Code Playgroud)
请注意,最后一个更短.
我可以做一个循环,我不断计算并按字符构建一个新的字符串字符,但肯定必须有更好的东西吗?
我曾经read.table读过一个包含0.00001等数字的文件
当我把它们写回来时,write.table这些数字显示为1e-5
我怎样才能保留旧格式?
能够创建R列表对象而不必指定每个元素的名称对我非常有帮助.例如:
a1 <- 1
a2 <- 20
a3 <- 1:20
b <- list(a1,a2,a3, inherit.name=TRUE)
> b
[[a1]]
[1] 1
[[a2]]
[1] 20
[[a3]]
[1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Run Code Online (Sandbox Code Playgroud)
这将是理想的.有什么建议?
此代码曾用于2017年5月1日左右(dplyr版本0.5.0).对于dplyr0.7版本,它失败了Error: Variable context not set.我找不到解决方案谷歌搜索或查看dplyr NEWS文件.
这部分很好(设置示例 - 可能会简化......)
xx <- data.frame(stud_number=1:3,HW1=rep(0,3),HW2=c(NA,1,1),junk=rep(NA,3))
repl_1_NA <- function(x) { return(replace(x,which(x==1),NA)) }
hw1 <- xx %>% select(c(stud_number,starts_with("HW")))
Run Code Online (Sandbox Code Playgroud)
现在尝试使用mutate_at():dplyr版本> = 0.7.0 失败
hw1 %>% mutate_at(starts_with("HW"),repl_1_NA)
Run Code Online (Sandbox Code Playgroud) 我有一个由400'000行和大约50列组成的数据帧.由于这个数据框架太大,因此计算起来太费力了.我想将这个数据帧拆分成较小的数据帧,之后我将运行我想要运行的函数,然后在最后重新组装数据帧.
我没有用于分割此数据帧的分组变量.我只想按行数拆分它.例如,我想将这个400'000行的表分成400个1'000行的数据帧.我怎么能这样做?
我在R中有一个列表:
a <- list(n1 = "hi", n2 = "hello")
Run Code Online (Sandbox Code Playgroud)
我想附加到这个命名列表,但名称必须是动态的.也就是说,它们是从字符串创建的(例如:paste("another","name",sep="_")
我尝试这样做不起作用:
c(a, parse(text="paste(\"another\",\"name\",sep=\"_\")=\"hola\"")
Run Code Online (Sandbox Code Playgroud)
这样做的正确方法是什么?最终目标只是附加到此列表并动态选择我的名字.
可以select在dplyr中使用逻辑向量吗?
dat <- tbl_df(mtcars)
isNum <- sapply(dat, is.numeric)
select(dat, isNum)
Run Code Online (Sandbox Code Playgroud)
Run Code Online (Sandbox Code Playgroud)select(dat, isNum)名称错误(sel)[未命名] < - sel [未命名]:下标作业中不允许使用NA
指数工作:select(dat,(1:ncol(dat))[isNum])为什么不合乎逻辑?
当我看到帮助函数为select时,starts_with select(dat,starts_with("m"))我认为它们可以使用逻辑...