Начиная с базового кода, настройте структуру кадра выходных данных. Затем выполните цикл и введите значения точности на каждой итерации. Этот метод также «выравнивает» вложенный цикл и избавляет от вашей переменной c
, которая конфликтует со встроенной функцией c()
.
kerna <- c("rbfdot","polydot","vanilladot","tanhdot","laplacedot",
"besseldot","anovadot","splinedot")
# Create dataframe to store output data
df <- data.frame(kerna = rep(kerna, each = 100),
cValues = rep(1:100, times = length(kerna)),
accuracyValues = NA,
stringsAsFactors = F)
# Define a for loop to calculate accuracy for different values of C and kernel
for (i in 1:nrow(df)){
ker <- df$kerna[i]
j <- df$cValues[i]
model <- ksvm(V11~V1+V2+V3+V4+V5+V6+V7+V8+V9+V10,
data = credit_card_data,
type ="C-svc",
kernel = ker,
C=j,
scaled =TRUE)
pred <- predict(model,credit_card_data[,1:10])
accuracy <- sum(pred== credit_card_data$V11)/nrow(credit_card_data)
# Insert accuracy into df$accuracyValues
df$accuracyValues[i] <- accuracy;
}
Нет, это одно и то же.
Я разобрал SqlConnection.CreateCommand
и обнаружил следующее:
public SqlCommand CreateCommand()
{
return new SqlCommand(null, this);
}
, что доказывает, что они действительно одно и то же.
Они делают то же самое. Обоснование SqlConnection.CreateCommand
заключается в реализации заводской модели.
Это может быть само собой разумеющимся, но для полноты есть одно отличие. Если вы создаете SqlCommand, вы можете передать CommandText в качестве параметра. Если вы разрешите SqlConnection CreateCommand, то нет никаких условий для предоставления CommandText. Так как вы можете просто установить свойство CommandText SqlCommand, различие довольно тонкое, но оно существует.
SqlConnection db = new SqlConnection();
SqlCommand cmd = db.CreateCommand();
cmd.CommandText = "select @@version";
или
SqlConnection db = new SqlConnection();
SqlCommand cmd = new SqlCommand("select @@version", db);
Функционально они точно такие же.
Однако SqlConnection.CreateCommand ()
позволяет вам быть более независимым от того, какой тип БД вы используете. Например, вместо того, чтобы передавать экземпляр SqlConnection
, вы можете передать его как DbConnection
, что даст DbCommand
.