Ошибка типа: объект «Значение» не поддерживает назначение элемента - PullRequest
0 голосов
/ 15 апреля 2019

спасибо за вашу помощь.

Я работаю с Orange3 (и мне это нравится) ... Я собираю большие объемы данных и обрабатываю их для нормализации, форматирования и логического анализа.

Я использую python для манипулирования данными в полях.

Вот фрагмент кода:

new_data = in_data.copy()
        for d in new_data:
        for f in d.domain.attributes:
            #print(f)
            if f.name == "Phone":
                counter+=1

                inan = np.isnan(d["Phone"])
                print("NaN Check: " + str(inan))

                fph = str(phone_format(d["Phone"].value))

                print(str(counter) + ": " + fph)
                d[f]["Phone"]=str(fph)

TypeError: объект 'Value' не поддерживает присвоение элемента

Это неправильная строка кода: д [е] [ "Телефон"] = ул (FPH)

Кто-нибудь любезно посоветует мне правильный? и питонический (если это возможно) способ обновления конкретного поля при итеративном расследовании?

Заранее спасибо!

@ objectAntics

1 Ответ

0 голосов
/ 17 апреля 2019

Кредит переходит на @MarkoToplak

Если вы хотите изменить значения для Orange.data.Table, вам нужно будет установить правильное значение в вашем new_data.X, который представляет собой двумерную пустую таблицу с плавающей точкой. Он не может содержать строки. Строки в Orange.data.Table могут храниться только как мета-атрибуты. - Марко Топлак 8 часов назад <</p>

@ MarkoToplak, на котором вы находились ... Мне пришлось изменить входные данные, чтобы они были мета / текстовыми, и перезагрузить файл, что сделало возможным назначение. БЛАГОДАРЮ ВАС! - objectAntics только сейчас Редактировать Удалить

new_data [counter] ["Phone"] = fph

...