gpt4 book ai didi

r - 给定一个字符串列表,如何转换回数字列表?

转载 作者:行者123 更新时间:2023-12-01 11:16:57 25 4
gpt4 key购买 nike

我得到一个字符串,它是一个数字列表:

s <- "[14,7,5,3,4,0,1,7,2,3,1,18,13,4,23,7,8,8,11,18,15,6,2,10,2,4,8,5,11,5,1,5,2,4,3,1,6,8,5,5,3,1,1,4,5,2,9,3,4,11,11,14,3,12,2,6,0,0,15,1,18,5,3,6,6,6]"

请指导我如何将其转换回常规的 list 数字?我试过使用 strsplit, as.data.frame 但它看起来很长。我想要一些高效且有创意的东西。

最佳答案

1) JSON 问题中显示的输入是 JSON 格式,因此请使用 jsonlite 或 rjson 包,它将为您执行所需的字符串处理。

library(jsonlite)
fromJSON(s)

给予:

 [1] 14  7  5  3  4  0  1  7  2  3  1 18 13  4 23  7  8  8 11 18 15  6  2 10  2
[26] 4 8 5 11 5 1 5 2 4 3 1 6 8 5 5 3 1 1 4 5 2 9 3 4 11
[51] 11 14 3 12 2 6 0 0 15 1 18 5 3 6 6 6

2) strapply 如果您无论如何都想使用字符串处理,那么一个选项是strapply 提取所有数字序列"\\d+" 并转换为数字,给出与上面相同的输出。

library(gsubfn)
strapply(s, "\\d+", as.numeric, simplify = c)

3) 扫描或不带任何包或正则表达式:

scan(text = chartr("[]", "  ", s), sep = ",", quiet = TRUE)

关于r - 给定一个字符串列表,如何转换回数字列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49606200/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com