Я пытаюсь выполнить интеграцию trapz с функцией, использующей 2 списка и 1 numpy.ndarray
. Это не сработает, и я не могу решить, нужно ли мне конвертировать мои списки в другой тип данных. Я рад, что фактическая функция верна, но я не уверен, как действовать дальше?Python: TypeError: неподдерживаемый тип операндов для /: 'float' и 'list'
Функция:
BB_flux = trapz((1./lamz)*flux*T,x=lamz)/trapz((1./lamz)*T,x=lamz)
где T
и lamz
списки и flux
является ndarray, что я сделал с помощью интерполяции.
Оба T
и lamz
сделаны чтение из файла CSV, а затем добавляя значения в T
и lamz
как поплавки.
Сообщение об ошибке довольно четкое представление о проблеме - то, что вы ожидали исхода, например, '1./lamz' быть? – jonrsharpe
Я должен был просто получить большое количество в качестве значения BB_flux. Есть ли тип данных, который предпочитает trapz? потому что ни одна из других переменных не является плавающей точкой, поэтому я не уверен, как происходит ошибка –
@ThomasBennett. Вы пытаетесь разделить значение '1.' на обычный список python, который не поддерживается. Вы ожидали, что результатом будет список поплавков? Для этого вам нужно будет использовать понимание списка: '[1./x для x в lamz]'. – ekhumoro