在 c# r.net 中为一个变量使用多个名称

Use of many names in c# r.net for one variable

它不像 R 那样,我们可以像本例那样对一个具有一个名称的变量进行许多操作。

DataIns=read.csv(file="C:/Users/isalah/Desktop/Fichiers_CRM/Fichier_csv/Inscrits.csv",sep=";",header=TRUE)
DataIns=DataIns[with(DataIns, order(Id)),]

如您所见,变量 DataIns 被使用了两次,甚至用于其他操作。

在 C# 中,如果我决定执行与上述代码等效的操作:

DataFrame testData = engine.Evaluate("DataIns<-read.table('C:/Users/isalah/Desktop/Fichiers_CRM/Fichier_csv/Diagnostic.csv', header=TRUE, sep =';',fill = TRUE)").AsDataFrame();    
DataFrame testData= engine.Evaluate("DataIns=DataIns[with(DataIns, order(Id)),]").AsDataFrame();

会说这个变量已经被定义了

我该如何处理? 谢谢!

当你想覆盖 testData 变量时,只需这样写

DataFrame testData = engine.Evaluate("DataIns<-read.table('C:/Users/isalah/Desktop/Fichiers_CRM/Fichier_csv/Diagnostic.csv', header=TRUE, sep =';',fill = TRUE)").AsDataFrame();    
testData= engine.Evaluate("DataIns=DataIns[with(DataIns, order(Id)),]").AsDataFrame();

当你想要两个变量重命名第二个变量时

DataFrame testData = engine.Evaluate("DataIns<-read.table('C:/Users/isalah/Desktop/Fichiers_CRM/Fichier_csv/Diagnostic.csv', header=TRUE, sep =';',fill = TRUE)").AsDataFrame();    
DataFrame testDataNew= engine.Evaluate("DataIns=DataIns[with(DataIns, order(Id)),]").AsDataFrame();