Ошибка атрибута: объект ‘DataFrame’ не имеет атрибута ‘allah1__27’

#python #datetime #machine-learning #arcpy

#python #дата-время #машинное обучение #arcpy

Вопрос:

Я пытаюсь решить это, и я почти уверен, что код правильный, но он продолжает выдавать мне ту же ошибку.

Я пробовал это:

 import datetime
from datetime import datetime as datet

test_df = shapefile.copy()
test_df['timestamp'] = prediction_time
test_df['allah1__27'] = shapefile.allah1__27.astype('int64')
test_df['hour'] = prediction_time.hour
test_df['weekday'] = prediction_time.weekday()
test_df['month'] = prediction_time.month
def add_join_key(df):
    df['join_key'] = df.allah1__27.map(int).map(str) df.timestamp.map(datetime.isoformat)
    df = df.set_index('join_key')
    return df
weath_df = wdf.loc[prediction_time]
test_df = add_join_key(test_df)
weath_df = add_join_key(weath_df.reset_index())
  

И я получаю эту ошибку:

 AttributeError: module 'datetime' has no attribute 'isoformat'
  

Также я пытался:

 def add_join_key(df):
    df['join_key'] = df.allah1__27.map(int).map(str) df.timestamp.map(datet.isoformat)
    df = df.set_index('join_key')
    return df
weath_df = wdf.loc[prediction_time]
test_df = add_join_key(test_df)
weath_df = add_join_key(weath_df.reset_index())
  

И я получаю эту ошибку:

 AttributeError: DataFrame' object has no attribute 'allah1__27'
  

Я что-то пропустил?

Ответ №1:

Что касается первой ошибки: метод isoformat получен из datetime, это метод datetime.

Вы должны:

import datetime
datetime.datetime.isoformat

Или:

from datetime import datetime as datet
datet.isoformat

Что касается второй ошибки: df — это словарь, я думаю, вам следует вызвать его:

  df['join_key'] = df['allah1__27'].map(int).....
  

Комментарии:

1. @leardoArnsGonzales я использовал datet.isoformat и получил ошибку значения: невозможно преобразовать значение с плавающей точкой NaN в целое число

2. не могли бы вы показать код, в котором вы его используете? Или ошибка сообщения? Это может быть что-то со значением, которое вы передаете