r - 如何在不使用 for 循环的情况下使用 str_split 拆分嵌套列表?
问题描述
现在我有一个嵌套列表,其中包含类似这样的内容
[[1]] [1] “53” “682, 684” “677” “683”
[[2]] [1] “40, 43” “10” “44, 47”
我想用“,”分割每个列表,这样它们都可以是一个数字列表
[[1]] [1] “53” “682” “684” “677” “683”
[[2]] [1] “40” “43” “10” “44” “47”
现在我现在的想法是我想使用 apply() 并使用递归定义我自己的函数,但是如何检测每行中有多少个列表?
我被要求不要使用 for 循环,那我该怎么办??
解决方案
像这样的东西?不确定,因为问题中样本数据的格式未知...
#create sample data
v1 <- c("53", "682, 684", "677", "683")
v2 <- c("40, 43", "10", "44, 47")
l <- list( v1, v2 )
#code
lapply( l, function(x) trimws( unlist ( strsplit( x, ",") ) ) )
#output
# [[1]]
# [1] "53" "682" "684" "677" "683"
#
# [[2]]
# [1] "40" "43" "10" "44" "47"
#
推荐阅读
- c++ - 能够采用第三方依赖项的最佳扩展机制?
- audio - OPUS 音频格式 Safari 困境
- java - 带有 ws-security 的肥皂信封在响应中包含两个 DigestValue
- java - 如何使用 BeforeTest 执行多次运行 TestNG 测试?
- typescript - 打字稿避免交叉路口中可空值的重复类型
- python - 凭证 JSON 文件到谷歌 colab
- sql-server-2008 - 问题:无法加载文件或程序集 'CrystalDecisions.Web,版本 = 13.0.3500.0
- postgresql - 如何在 postgreSQL 中实现物化视图的 MVCC 概念?
- python - SPSS 22 中的 Numpy
- python - 蟒蛇 | UnicodeEncodeError:“charmap”编解码器无法在位置 1 编码字符“\u0119”:字符映射到