与 R 连接的 C# 中的数据帧处理
Data frame handling in C# connected with R
我正在尝试通过 WPF 应用程序处理 R 中的数据帧。
我使用 RDotNet 作为 R 和 C# 之间的接口,我的代码片段如下
DataFrame mapp = engine_1.Evaluate("mapp").AsDataFrame();
我无法获取特定的列或行,即无法实现 mapp[1] 类型索引。正在返回整个数据框。
如果有人可以提出任何方法,我将不胜感激,我正在探索 Deedle 并使用 DataGrid 控件。
谢谢!
好吧,如果 R 中的 mapp 变量 确实是一个数据框(我们无法从您的代码片段中分辨出来),它确实应该作为数据框返回,这有什么惊喜?您可以通过单项索引、整数或列名访问它。
// cases <- expand.grid(x=1:3, y=letters[1:3])
var letterCases = engine.Evaluate("cases[,'y']").AsCharacter().ToArray();
// Equivalent:
var df = engine.GetSymbol("cases").AsDataFrame();
letterCases = df[1].AsCharacter().ToArray();
letterCases = df["y"].AsCharacter().ToArray();
您可以在 solutions/Onboard 示例 2
下找到示例用法,包括(但可选)C# 和 R this onboarding guide 的一些更高级的网格化
我正在尝试通过 WPF 应用程序处理 R 中的数据帧。 我使用 RDotNet 作为 R 和 C# 之间的接口,我的代码片段如下
DataFrame mapp = engine_1.Evaluate("mapp").AsDataFrame();
我无法获取特定的列或行,即无法实现 mapp[1] 类型索引。正在返回整个数据框。
如果有人可以提出任何方法,我将不胜感激,我正在探索 Deedle 并使用 DataGrid 控件。
谢谢!
好吧,如果 R 中的 mapp 变量 确实是一个数据框(我们无法从您的代码片段中分辨出来),它确实应该作为数据框返回,这有什么惊喜?您可以通过单项索引、整数或列名访问它。
// cases <- expand.grid(x=1:3, y=letters[1:3])
var letterCases = engine.Evaluate("cases[,'y']").AsCharacter().ToArray();
// Equivalent:
var df = engine.GetSymbol("cases").AsDataFrame();
letterCases = df[1].AsCharacter().ToArray();
letterCases = df["y"].AsCharacter().ToArray();
您可以在 solutions/Onboard 示例 2
下找到示例用法,包括(但可选)C# 和 R this onboarding guide 的一些更高级的网格化