SVD-код в системной ошибке рекомендации
Я использую алгоритм SVD, и я использую форму холодного старта в системе предложений в моем наборе данных (скрещивание книг).
для использования разреженности с MathNet.Numeric, прежде чем использовать svD в моей форме, я использую этот код в таблице рейтинга, но мой код не читает набор данных.
вот мой код
var arrayOfDoubles = DenseMatrix.OfArray(To2D<double>
(dt1_rating.AsEnumerable().Select(x => new[] {
Convert.ToDouble(x[0]) }).ToArray()));
//Select(x => new[] { Convert.ToDouble(x[0]),
Convert.ToDouble(x[1]) }).ToArray()));
var S = arrayOfDoubles.Svd();
DataTable dt = new DataTable();
dt.Clear();
dt.Columns.Add("USERID");
dt.Columns.Add("ISBn");
dt.Columns.Add("BOOKRATING");
double[,] U = S.VT.ToArray();
for (int outerIndex = 0; outerIndex < S.VT.RowCount; outerIndex++)
{
for (int innerIndex = 0; innerIndex < S.VT.ColumnCount; innerIndex++)
{
DataRow newRow = dt.NewRow();
newRow["USERID"] = U[outerIndex, innerIndex];
newRow["ISBN"] = U[outerIndex, innerIndex];
newRow["BOOKRATING"] = U[outerIndex, innerIndex];
dt.Rows.Add(newRow);
}
}
dt1_rating = dt;///////////////////تا این جا
Это моя ошибка
Объект не может быть приведен из DbNull к другим типам или системным неверным CastExceptions