对于一维numpy数组a,我认为np.sum(a)和a.sum()是等价的函数,但我只是做了一个简单的实验,似乎后者总是要快一点:
In [1]: import numpy as np
In [2]: a = np.arange(10000)
In [3]: %timeit np.sum(a)
The slowest run took 16.85 times longer than the fastest. This could mean that an intermediate result is being cached.
100000 loops, best of 3: 6.46 µs per loop
In [4]: %timeit a.sum()
The slowest run took 19.80 times longer than the fastest. This could mean that an intermediate result is being cached.
100000 loops, best …Run Code Online (Sandbox Code Playgroud) 我试图用来numpy.random.multivariate_normal生成多个样本,其中每个样本都是从具有不同mean和的多元正态分布中提取的cov.例如,如果我想绘制2个样本,我试过了
from numpy import random as rand
means = np.array([[-1., 0.], [1., 0.]])
covs = np.array([np.identity(2) for k in xrange(2)])
rand.multivariate_normal(means, covs)
Run Code Online (Sandbox Code Playgroud)
但这会导致ValueError: mean must be 1 dimensional.我必须为此循环吗?我认为对于这样的功能rand.binomial是可能的.
假设 和x都是y非常小的数字,但我知道 的真实值x / y是合理的。
最好的计算方法是什么x/y?特别是,我一直在np.exp(np.log(x) - np.log(y)这样做,但我不确定这是否会产生影响?
使用http://seaborn.pydata.org/ generated/seaborn.violinplot.html 上的示例:
import seaborn as sns
sns.set_style("whitegrid")
tips = sns.load_dataset("tips")
ax = sns.violinplot(x="day", y="total_bill", data=tips)
Run Code Online (Sandbox Code Playgroud)

(来源:pydata.org)
如何在每把小提琴的顶部绘制两条小水平线(例如指示分布的 2.5 百分位数和 97.5 百分位数的误差线上限?