我正在努力将R data.frame写入C#DataGridView。我找到了以下解决方案(original solution),它确实非常棒,但如果我有数据表框1000x1000,那就是我的生命。
DataFrame dataset = engine.Evaluate("string1").AsDataFrame(); // string1 is data.frame generated by R
engine.SetSymbol("dataset", dataset);
for (int i = 0; i < dataset.ColumnCount; ++i)
{
dgvDataFrame.ColumnCount++;
dgvDataFrame.Columns[i].Name = dataset.ColumnNames[i];
}
for (int i = 0; i < dataset.RowCount; ++i)
{
++dgvDataFrame.RowCount;
dgvDataFrame.Rows[i].HeaderCell.Value = dataset.RowNames[i];
for (int k = 0; k < dataset.ColumnCount; ++k)
{
dgvDataFrame[k, i].Value = dataset[i, k];
}
}
您是否碰巧知道是否有更有效的解决方案。非常感谢您的所有提示或建议。