【发布时间】:2020-07-05 15:24:30
【问题描述】:
嗨,有没有一种方法可以限制 data.frame 中所有列的字符串文本大小,而不必遍历每一列并一次使用 str_trunc 之类的东西?例如下面的数据框,我可以将所有文本大小限制为 5 个字符,而不必一次处理一列。如果这有 50 列,一次截断一列会很困难。
g1 = data.frame (
gene = c( "aaaaaaa","aaaaaaa","aaaaaaaaaaaa","a","bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"),
value = c("1fdfdfdsfdsfdsfds","2fdfdfdfdsfds00","fdfdfds3","5ffffffffffff","0")
)
我尝试了类似的方法但失败了。 lapply(g1, str_trunc, 5)
如果我可以一口气将数据框中的任何字符串限制为 5 个字符,那就太好了。所以例如第一个单元格,第 1 行,第 1 列将只是 aaaaa
谢谢。
【问题讨论】:
-
你的预期输出是什么
-
@akrun 预计所有字符串仅限于 5 个字符。抱歉将更新以使其更清晰。
-
lapply命令会这样吗?或str_trunc(as.matrix(g1), 5) -
我对一些宽度小于 5 的元素有疑问。你想保持原样还是填充一些东西?
-
这只是为了展示目的吗?