私はデータにガウスベルカーブを合わせるためにhereというアルゴリズムを使用しています。フィットアルゴリズムが自分のデータを受け入れない
私は私のデータ配列を生成する場合:
x=linspace(1.,100.,100)
data= 17*exp(-((x-10)/3)**2)
すべてが正常に動作します。
しかし、私は
file = open("d:\\test7.txt")
arr=[]
data=[]
def column(matrix,i):
return [row[i] for row in matrix]
for line in file.readlines():
numbers=map(float, line.split())
arr.append(numbers)
data = column(arr,300)
x=linspace(1.,115.,115)
を使用してテキストファイルからデータを読み込む場合、私は、エラーメッセージが表示されます。
Traceback (most recent call last):
File "readmatrix.py", line 60, in <module> fit(f, [mu, sigma, height], data)
File "readmatrix.py", line 42, in fit if x is None: x = arange(y.shape[0])
AttributeError: 'list' object has no attribute 'shape'
は、私の知る限り見ることができるように、データに含まれる値が正しいですか、それはのように見えます:
[0.108032, 0.86181600000000003, 1.386169, 3.2790530000000002, ... ]
誰かが私が間違ってやっている手がかりを持っていますか?
ありがとうございます!
@Dzz:ソースコードの関連部分は含まれていません。 42行目は "y.shape [0]"を使用しているためにエラーが発生し、yはシェイプ属性を持たないリストタイプです。エラーを適切に見つけるためには、より多くのソースを含める必要があります。 –
申し訳ありませんが、コードにリンクして投稿のテキストを減らしたいと考えていました。 – Dzz