Как исправить «AttributeError:« модуль »объект не имеет атрибута« х »»? - PullRequest
0 голосов
/ 07 января 2019

Я хочу увидеть очень простой сюжет. Но я получаю ошибку для «x» в «def». Пожалуйста, дайте мне знать, почему.

Python 2.7 / spyder

import numpy as np
from scipy.optimize import curve_fit
import matplotlib.pyplot as plt
import pandas as pd
import math

def func(x,a,b,): 
    return a*np.x+b

x=np.linspace(-1,1,100)
y=func(x,1,1)
plt.plot(x,y,linewidth=3, color='red')
plt.show() 

Вывод, который я получаю:

  runfile('I:/K/python/least square_HW.py', wdir='I:/K/python') Traceback (most recent call last):

  File "<ipython-input-19-c03c1aa079d4>", line 1, in <module> runfile('I:/K/python/least square_HW.py', wdir='I:/K/python')
  File "C:\ProgramData\Anaconda2\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 704, in runfile execfile(filename, namespace)
  File "C:\ProgramData\Anaconda2\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 93, in execfile exec(compile(scripttext, filename, 'exec'), glob, loc)
  File "I:/K/python/least square_HW.py", line 18, in <module> y=func(x,1,1)
  File "I:/K/python/least square_HW.py", line 14, in func return a*np.x+b
        AttributeError: 'module' object has no attribute 'x'

1 Ответ

0 голосов
/ 07 января 2019

Numpy не имеет никакого «х». Точечный оператор используется для вызова функции этого класса. Я думаю, что вы пытаетесь return a*x+b.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...