小编Sau*_*tro的帖子

使用SQLite的NumPy数组

我在Python中看到的最常见的SQLite接口是sqlite3,但是有什么能与NumPy数组或重组一起使用吗?我的意思是一个识别数据类型并且不需要逐行插入,并提取到NumPy(rec)数组......?有点像在R的SQL函数RDBsqldf库,如果任何人都熟悉那些(它们导入/导出/追加整个表或表的子集或R数据表).

python arrays sqlite numpy scipy

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

使用Numpy和ARM处理器

我正试图将numpy放在带有ARM处理器的系统上.我对这些处理器没有多少经验,所以我不确定从哪里开始.我试图通过谷歌搜索答案,但没有成功找到有关交叉编译numpy的细节.我目前在机器上有python版本2.4,我正在尝试导入numpy 1.6.2.关于我可以从哪里开始的任何建议?

python arm numpy

5
推荐指数
0
解决办法
1993
查看次数

向量化在ndarray的子​​阵列上操作的函数

我有一个功能作用于3D阵列的每个2D切片.如何对函数进行向量化以避免循环以提高性能?例如:

def interp_2d(x0,y0,z0,x1,y1):
    # x0, y0 and z0 are 2D array
    # x1 and y1 are 2D array
    # peform 2D interpolation
    return z1

# now I want to call the interp_2d for each 2D slice of z0_3d as following:
for k in range(z0_3d.shape[2]):
    z1_3d[:,:,k]=interp_2d(x0, y0, z0_3d[:,:,k], x1, y1)
Run Code Online (Sandbox Code Playgroud)

python arrays numpy

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

与linalg.lstsq的numpy多元回归

我试图在方程组中求解m1,m2,m3,m4,这样:

y=(m1*x1)+(m2*x2)+(m3*x3)+(m4*x4)
Run Code Online (Sandbox Code Playgroud)

哪里:

x1=[x11,x12,x13...]
x2=[x21,x22,x23...]
x3=[x31,x32,x33...]
x4=[x41,x42,x43...]

y=[y1,y2,y3,y4,...]
Run Code Online (Sandbox Code Playgroud)

我一直在努力做到:

m=numpy.linalg.lstsq(A,y)[0]
Run Code Online (Sandbox Code Playgroud)

哪里:

A = [[x11,x21,x31,x41],[x12,x22,x32,x42],.....]
Run Code Online (Sandbox Code Playgroud)

但是我的结果与Mat-lab中的类似分析不匹配.

您可能会看到的任何建议或问题都非常有用!

谢谢.

python numpy linear-regression

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

Matplotlib,添加多行文本.添加可以跟随曲线的文本

我已经将文本添加到绘图中,在每行中编码,然后调整它看起来像样,增加或减少宽度,或更改位置.但是,有没有办法让Python知道你想要文本的位置以及你想要它的设置方式?然后我可以添加文本,Python将计算出细节.

例如,看看下面的图片:

在此输入图像描述

在图中,我在左上角有3行文字,在图的线上有一行.

我不得不调整3条线以获得合适的间距.这不是一项艰巨的任务,但如果我能说这里是文本,这里就是位置,那将很容易,然后Python以适当的间距堆叠它.

对于单独的线路,我不得不进行调整,因此它不在线上并降低线路.对于这种情况,有可能告诉python我想在情节上方的文字和80%下线?

我习惯于LaTeX在没有硬编码坐标的情况下进行调整的地方.优点是

(1) if I want to change the location, I can change the percentage shift and not the coordinate.

(2) if the line is angled, the text will adjust to the line.
Run Code Online (Sandbox Code Playgroud)

(2)的优点是我试图将文字放在图中顶部向上倾斜的文本上.

可以这样做,还是我要求多少?如果是这样,我该怎么做?

以下是实现该图的代码:

import numpy as np
import pylab

r1 = 1  #  AU Earth                                                                 
r2 = 1.524  #  AU Mars                                                              
deltanu = 75 * np.pi / 180  #  angle in radians                                     
mu = 38.86984154054163

c = np.sqrt(r1 ** 2 + …
Run Code Online (Sandbox Code Playgroud)

python curve text matplotlib

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

f2py,返回数组的Python函数(向量值函数)

在下面的Python中,我有五个函数包含在func我必须集成的数组中.代码调用使用f2py以下代码生成的外部Fortran模块:

import numpy as np
from numpy import cos, sin , exp
from trapzdv import trapzdv
def func(x):
    return np.array([x**2, x**3, cos(x), sin(x), exp(x)])

if __name__ == '__main__':
    xs = np.linspace(0.,20.,100)
    ans =  trapzdv(func,xs,5)
    print 'from Fortran:', ans
    print 'exact:', np.array([20**3/3., 20**4/4., sin(20.), -cos(20.), exp(20.)])
Run Code Online (Sandbox Code Playgroud)

Fortran例程是:

      subroutine trapzdv(f,xs,nf,nxs,result)
          integer :: I
          double precision :: x1,x2
          integer, intent(in) :: nf, nxs
          double precision, dimension(nf) :: fx1,fx2
          double precision, intent(in), dimension(nxs) :: xs
          double precision, intent(out), dimension(nf) :: …
Run Code Online (Sandbox Code Playgroud)

python numpy cython numerical-integration f2py

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

将对称矩阵(2D阵列)的上/下三角形部分转换为1D阵列并将其返回到2D格式

这个问题阐述了如何访问lowerupper给定矩阵的triagular部分,说:

m = np.matrix([[11, 12, 13],
               [21, 22, 23],
               [31, 32, 33]])
Run Code Online (Sandbox Code Playgroud)

在这里,我需要在一维数组中转换矩阵,可以这样做:

indices = np.triu_indices_from(m)
a = np.asarray( m[indices] )[-1]
#array([11, 12, 13, 22, 23, 33])
Run Code Online (Sandbox Code Playgroud)

在进行大量计算后a,更改其值,它将用于填充对称的2D数组:

new = np.zeros(m.shape)
for i,j in enumerate(zip(*indices)):
    new[j]=a[i]
    new[j[1],j[0]]=a[i]
Run Code Online (Sandbox Code Playgroud)

返回:

array([[ 11.,  12.,  13.],
       [ 12.,  22.,  23.],
       [ 13.,  23.,  33.]])
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法来实现这一目标?更具体地说,避免Python循环重建2D数组?

python arrays numpy matrix

5
推荐指数
3
解决办法
4390
查看次数

在总价格接近N的梦幻足球阵容中自动挑选11名球员的算法

我有500个花车的清单.

我想从列表中选出11个数字,当加在一起时总和为N,N在一个范围内X <= N <= Y

这基本上是为了一个梦幻足球比赛,我们在人员阵容中自动选出11名球员.

总成本应该在一个范围内,而不是随机的.

一个解决方案可能是连续随机挑选11名玩家,直到我得到一个符合范围的总数,但我想知道是否有更优雅的方法?

python algorithm

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

将从函数返回的多个1D数组合并到2D数组python中

我对python有点新鲜.我有一个名为featureExtraction的函数,它返回一个图像的一维数组.我需要逐行堆叠所有这样的1-d数组以形成2-d数组.我在MATLAB中有以下等效代码.

    I1=imresize(I,[256 256]);
    Features(k,:) = featureextraction(I1);
Run Code Online (Sandbox Code Playgroud)

featureextraction返回1-d行向量,该向量逐行堆叠以形成2-d数组.python中的等效代码片段是什么?

先感谢您.

python arrays numpy

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

如何根据指数给定沿给定轴的元素?

我有一个3D数组,我需要在最后一个轴上"挤"它,这样我得到一个2D数组.我需要以下面的方式做到这一点.对于前两个维度的索引的每个值,我知道应从中获取值的第三维的索引值.

例如,我知道,如果i1 == 2i2 == 7i3 == 11.这意味着out[2,7] = inp[2,7,11].从前两个维度到第三个维度的映射在另一个2D阵列中给出.换句话说,我有一个数组,其中2,7我的位置11作为一个值.

所以,我的问题是如何组合这两个数组(3D和2D)来获得输出数组(2D).

python arrays numpy

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