【问题标题】:TypeError: DatetimeIndex(...) must be called with a collection of some kind, '2020-06-21 12:14:33' was passedTypeError:必须使用某种集合调用 DatetimeIndex(...),传递了“2020-06-21 12:14:33”
【发布时间】:2022-06-15 14:58:50
【问题描述】:

我使用烧瓶为 ML 模型构建 API 当我输入数据然后签名时,我收到以下错误: TypeError:必须使用某种集合调用 DatetimeIndex(...),'2020-06-21 12:14:33' 过去了

    trans_date_trans_time = request.form['trans_date_trans_time']
    trans_date = pd.DatetimeIndex(trans_date_trans_time).date
    trans_time = pd.DatetimeIndex(trans_date_trans_time).time
    trans_date = pd.to_datetime(trans_date)
    del trans_date_trans_time

    trans_date = pd.to_datetime(trans_date)
    trans_date = trans_date.map(dt.datetime.toordinal)
    trans_time = pd.to_datetime(trans_time, format='%H:%M:%S')
    trans_time = 3600 * pd.DatetimeIndex(trans_time).hour + 60 * pd.DatetimeIndex(
        trans_time).minute + pd.DatetimeIndex(trans_time)

    merchant = request.form['merchant']
    merchant = label_encoder.fit_transform(merchant)
    category = request.form['category']
    category = label_encoder.fit_transform(category)
    amount = request.form['amount']
    gender = request.form['gender']
    if gender == ['M']:
        gender = 1
    elif gender == ['F']:
        gender = 0
    city = request.form['city']
    city = label_encoder.fit_transform(city)
    state = request.form['state']
    state = label_encoder.fit_transform(state)
    zip = request.form['zip']
    lat = request.form['lat']
    long = request.form['long']
    city_pop = request.form['city_pop']
    job = request.form['job']
    dob = request.form['dob']
    dob = pd.to_datetime(dob)
    age = (pd.to_datetime('now') - dob) / np.timedelta64(1, 'Y')
    age = age.astype(int)
    del dob

    unix_time = request.form['unix_time']
    merch_lat = request.form['merch_lat']
    merch_long = request.form['merch_long']

    d = (
        trans_date, trans_time, merchant, category, amount, gender, city, state, zip, lat, long, city_pop, job, age,
        unix_time, merch_lat, merch_long)

    d = pd.DataFrame(d)
    d = pd.DataFrame.transpose(d)

    prediction = model.predict(d)
    print('the prediction is', prediction)
    # result = prediction.argmax()
    if prediction == 1:
        result = 'it is fraud process '
    elif prediction == 0:
        result = 'it is safe process'
    else:
        result = 'Please enter input values'
    print('the result is', result)
    return render_template('bank.html', result=result)

else:
    return render_template('bank.html')

我在训练模型处理数据时也执行了这些步骤 希望得到帮助

【问题讨论】:

  • 你知道错误是哪一行吗?

标签: python flask ml


猜你喜欢
  • 2020-12-02
  • 2020-06-05
  • 2021-05-31
  • 2022-10-18
  • 1970-01-01
  • 2016-11-30
  • 2021-08-26
  • 2017-12-31
  • 1970-01-01
相关资源
最近更新 更多