小编lhc*_*eva的帖子

拟合部分高斯

我试图使用scikit-learn来拟合一些高斯人,因为scikit-learn GaussianMixture似乎比使用curve_fit更强大.

问题:在拟合甚至单个高斯峰的截断部分方面做得不好:

from sklearn import mixture
import matplotlib.pyplot
import matplotlib.mlab
import numpy as np

clf = mixture.GaussianMixture(n_components=1, covariance_type='full')
data = np.random.randn(10000)
data = [[x] for x in data]
clf.fit(data)
data = [item for sublist in data for item in sublist]
rangeMin = int(np.floor(np.min(data)))
rangeMax = int(np.ceil(np.max(data)))
h = matplotlib.pyplot.hist(data, range=(rangeMin, rangeMax), normed=True);
plt.plot(np.linspace(rangeMin, rangeMax),
         mlab.normpdf(np.linspace(rangeMin, rangeMax),
                      clf.means_, np.sqrt(clf.covariances_[0]))[0])
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述 现在改为data = [[x] for x in data]data = [[x] for x in data …

numpy gaussian curve-fitting scipy scikit-learn

7
推荐指数
1
解决办法
1137
查看次数

自动将转换txt转换为xls

我正在寻找最便宜的方法来自动将文件夹结构中的所有文本文件(制表符分隔)转换为.xls格式,保持列和行的形状不变.

编辑:这就是诀窍:

import xlwt
import xlrd
f = open('Text.txt', 'r+')
row_list = []
for row in f:
    row_list.append(row.split())
column_list = zip(*row_list)
workbook = xlwt.Workbook()
worksheet = workbook.add_sheet('Sheet1')
i = 0 
for column in column_list:
    for item in range(len(column)):
        worksheet.write(item, i, column[item])
    workbook.save('Excel.xls')
    i+=1
Run Code Online (Sandbox Code Playgroud)

python excel text

5
推荐指数
1
解决办法
1万
查看次数

在for循环中向后索引整个数组

假设我想循环遍历数组并在循环索引中向前和向后索引所有索引,如下所示:

x = np.random.uniform(size=600)
for i in range(len(x)):
    dot = np.dot(x[:-i], x[i:])
Run Code Online (Sandbox Code Playgroud)

现在这不起作用,因为x[:-0]就像x[:0]它给出的那样[].我可以单独处理零情况但是想知道是否有更多的pythonic方式来做这件事.

python numpy

5
推荐指数
1
解决办法
85
查看次数

在Matlab中改变拟合图的线宽

我想改变我的拟合图的宽度沿着以下线:

plot(fit, 'LineWidth', WidthSpec)
Run Code Online (Sandbox Code Playgroud)

不幸的是,当我尝试绘制数据并同时适合时:

plot(fit, 'LineWidth', WidthSpec, XData, YData)
Run Code Online (Sandbox Code Playgroud)

我收到一条错误消息说

??? Error using ==> cfit.plot at 52
EXCLUDEDATA has greater length than XDATA.
Run Code Online (Sandbox Code Playgroud)

绘制两者而不指定宽度

plot(fit, XData, YData) 
Run Code Online (Sandbox Code Playgroud)

工作得很好.

matlab plot matlab-figure

3
推荐指数
1
解决办法
2万
查看次数

Python:函数print()中的语法无效

我使用的是Python 2.7.当我尝试将简单字符串打印到文件时,出现以下错误:

语法错误:无效的元组

检测元组时出现语法错误

最小的例子:

fly = open('workfile', 'w')
print('a', file=fly)
Run Code Online (Sandbox Code Playgroud)

通过fly.write('a')工作写到同一个文件就好了.

python printing syntax

2
推荐指数
1
解决办法
4703
查看次数