将列表格式转换为列表中的字符串
Convert a list formatted as string in a list
我在 R 中有这个列表:
x[[82]]["PositionNormalized"]
$PositionNormalized
$PositionNormalized$X
[1] -0.678095
$PositionNormalized$Y
[1] -0.970294
我已经将它转换成这样的字符串:
list=as.character(x[[82]]["PositionNormalized"])
list
[1] "list(X = -0.678095, Y = -0.970294)"
如何将最后一个字符串重新转换回列表对象?
正如@missuse 所建议的,您可以使用 eval
和 parse
。后者将创建一个表达式,然后将其计算为 return 一个列表对象。
这是一个可重现的例子:
lst <- list(list(list(x = 123, y = "test")))
lst
eval(parse(text = as.character(lst[[1]])))
您也可以将其用于 运行 代码,如 this example 所示。
我在 R 中有这个列表:
x[[82]]["PositionNormalized"]
$PositionNormalized
$PositionNormalized$X
[1] -0.678095
$PositionNormalized$Y
[1] -0.970294
我已经将它转换成这样的字符串:
list=as.character(x[[82]]["PositionNormalized"])
list
[1] "list(X = -0.678095, Y = -0.970294)"
如何将最后一个字符串重新转换回列表对象?
正如@missuse 所建议的,您可以使用 eval
和 parse
。后者将创建一个表达式,然后将其计算为 return 一个列表对象。
这是一个可重现的例子:
lst <- list(list(list(x = 123, y = "test")))
lst
eval(parse(text = as.character(lst[[1]])))
您也可以将其用于 运行 代码,如 this example 所示。