首页 > 解决方案 > 如何将前四个字符串保留在列表中?

问题描述

我有一个 49 行的列表。列表中的每一行都包含一系列字符串,如下所示:

[[1]]
 [1] "ANGEL"   "Jan"     "R"       "26"      "PO"      "Box"     "40426"   "Olympia" "WA"      "98504"  

[[2]]
 [1] "BAILEY"  "Barbara" "R"       "10"      "PO"      "Box"     "40410"   "Olympia" "WA"      "98504"

我想弄清楚的是如何保留每行的前四个字符串并删除其他所有内容。我没有使用字符串的经验,并且正在努力做到这一点。任何人都可以提出建议吗?

谢谢你。

标签: rstring

解决方案


正如@Roland在评论中所说,您可以使用head

L <- replicate(2, month.abb, simplify=F)

lapply(L, head, n=5)
# [[1]]
# [1] "Jan" "Feb" "Mar" "Apr" "May"
# 
# [[2]]
# [1] "Jan" "Feb" "Mar" "Apr" "May"

或者,如果元素有间隙,请使用括号函数(尽管也可以无间隙)。

lapply(L, `[`, c(1, 3, 5))
# [[1]]
# [1] "Jan" "Mar" "May"
# 
# [[2]]
# [1] "Jan" "Mar" "May"

推荐阅读