I有しキャレットパッケージを使用してデータ・フレームからモデルを構築するように設計されている設定下記Rスクリプト:私はこのコードの機能を有することができるようにしたい R-キャレット関数を使用してモデルを構築するためにrpy2を使用するPythonスクリプトをどのようにフォーマットするのですか?
は内で発現さ
library(caret)
library(broom)
data<- data.table("mydata.csv")
splitprob <- 0.8
traintestindex <- createDataPartition(data$fluorescence, p=splitprob, list=F)
testset <- data[-traintestindex,]
trainingset <- data[traintestindex,]
model <- train(fluorescence~., trainingset, method = "glmStepAIC", preProc = c("center","scale"), trControl = cvCtrl)
final_model<- tidy(model$finalModel)
write.csv(tidy, "model_glm.csv")
Pythonスクリプト。パンダのデータフレームが生成された後、Rデータフレームに変換され、その後、上のRスクリプトと同じパラメータに設定されたキャレットの列関数を実行します。
import pandas as pd
from rpy2.robjects import r
import sys
import rpy2.robjects.packages as rpackages
from rpy2.robjects.vectors import StrVector
from rpy2.robjects import r, pandas2ri
pandas2ri.activate()
caret = rpackages.importr('caret')
broom= rpackages.importr('broom')
my_data= pd.read_csv("my_data.csv")
r_dataframe= pandas2ri.py2ri(my_data)
preprocessing= ["center", "scale"]
center_scale= StrVector(preprocessing)
cvCtrl = caret.trainControl(method = "repeatedcv", number= 20, repeats = 100)
model_R= caret.train("fluorescence~.", data= r_dataframe, method = "glmStepAIC", preProc = center_scale, trControl = cvCtrl)
print(model_R.finalModel)
しかし、このスクリプトは明らかに適切に行model_R= caret.train("fluorescence~., r_dataframe, method = "glmStepAIC", preProc = center_scale, trControl = cvCtrl")
でrpy2利回りSyntaxError: invalid syntax
とPythonスクリプトを実行するために私の試みとして、構成されていません。私はドキュメント(ソース:https://rpy2.github.io/doc/latest/html/introduction.html?highlight=linear%20model)で与えられた構文に従おうとしましたが、このようなコードを設定する方法はまばらです。
データフレームからモデルを構築できるように、コードを機能させるには、Pythonコードを修正する必要がありますか?