c# - R.NET 获取 Pairlist 值或将 Pairlist 解析为 Dictionary
问题描述
我有以下问题。在我的 R 脚本中,我有一个名为 main 的函数,它返回如下 KeyValue 对,如下所示:
main <- function() {
return(
list(
"testOne" = "One",
"testTwo" = "Two",
"testThree" = "Three"
)
)
}
我使用 R.NET (REngine) 从我的 C# 调用它。但是,似乎我无法得到正确的结果。我相信这个列表的正确 C# 结构是 Dictionary,但我只能得到这个列表的键。
evaluatedData = _engine.Evaluate(functionCall);
var pairs = evaluatedData.AsList().ToPairlist();
foreach (var data in pairs) {
//data.PrintName is key
var key = data.PrintName;
var value = data.Value.AsSymbol().PrintName;
}
使用此代码,键变量实际上是来自上述 R 脚本的键(在我的情况下"testOne"
为 , ) "testTwo"
,"testThree"
但是,值是符号类型。但是如果我在这个 Symbol 类型上使用 PrintName,我会得到一些像这样的乱码:"�\u001e���\u0001"
我的问题是......我怎样才能从上面的 R 脚本中获得字典?或者,我怎样才能从 PairList 中获取字符串形式的值?
解决方案
推荐阅读
- c# - 你怎么做一个六角按钮?
- python - 如何在正则表达式中使用括号获得多个数字
- excel - 旧数据被覆盖 - Python 到 Excel
- xml - pom文件中缺少包装标签
- google-maps - Fluter - Google Maps,是否可以使用 Material Icon 作为地图标记?
- r - R 绘图在生成文本/数字标签时存在问题
- python - Python:在列表中组合数字
- javascript - 嵌套循环返回 Reactjs 中的简单 ListItem - -Object.values 和 Object.keys
- angular - 如何将json深度克隆到一个类
- forms - Google 表单到 Slack 线程消息