【python – 将Matrix理解为List列表,然后是Numpy Array】教程文章相关的互联网学习教程文章

python-如何使用numpy / scipy生成矩形脉冲【代码】

我想用python生成矩形脉冲.我相信可以用numpy或scipy来完成.但是我无法从API获得它.生成矩形脉冲后,将使用matplotlib对其进行绘制.解决方法:要创建一维数组,将所有零都保留,但要扩展1.0值-一个矩形脉冲:import numpy as np a = np.zeros( (1000,) ) # whatever size. initializes to zeros a[150:180] = 1.0 # index range sets location, width of impulse要查看情节:import matplotlib.pyplot as mp mp.plot(a) mp....

python-字符串和数组(矩阵)按行排列:numpy.savetxt【代码】

我有两个字符串数组,它们必须彼此按行排列,然后必须将它们写入文本文件中import numpy as np title1 = np.array(['text1']) title2 = np.array(['text2']) np.savetxt('result.csv',(title1, title2),fmt="%s")结果应为以下文件开头:text1 text2但更像是这样:text1text2第二个问题是在这两行文本下面,我需要在下一行中放一个矩阵(我的要大得多).矩阵的条目应以分号“;”隔开. -行末不应有一个(!)a=np.array([[1.2,2.3,3.4],[4...

如何在Python 3中比较Numpy字符串【代码】

下面演示了该问题:import io import numpy as npa = np.loadtxt(io.StringIO("val1 val2\nval3 val4"), dtype=np.dtype([("col1", "S10"), ("col2", "S10")])) print("looks weired: %s"%(a["col1"][0])) assert(a["col1"][0] == "val1")我不明白如何比较字符串.在我的系统(numpy 1.6.2,python 3.2.2)上,输出如下所示:>>> looks weired: b'val1' Traceback (most recent call last):File "D:/..../bug_sample.py...

python-取消numpy数组操作(包括标量)【代码】

我正在使用NumPy 1.7.1版.现在我遇到了一个我不明白的奇怪取消:>>> import numpy as np >>> a = np.array([ 883, 931, 874], dtype=np.float32)数学上0.1-a应该是0.1.现在让我们计算一下这个表达式以及绝对和相对误差:>>> a+0.1-a array([ 0.09997559, 0.09997559, 0.09997559], dtype=float32) >>> (a+0.1-a)-0.1 array([ -2.44155526e-05, -2.44155526e-05, -2.44155526e-05], dtype=float32) >>> ((a+0.1-a)-0.1) / 0.1...

python-在循环中附加具有不同维度的numpy ndarrays【代码】

我需要附加在每个循环中创建的数组,以便最后获得单个ndarray.代码结构如下:for...:...for...:list1 = array([some_math_here])list2.append(list1)#each loop creats a list, converting it to array() gives different shaped arrays:array(list2).shape(2939, 4)(2942, 4)(2027, 4)(2030, 4)#list3 collects all the generated resultslist3.append(list2)问:我如何拥有n * 4列和不同行数的数组而不是list3? 我尝试通过创建一...

python-来自numpy.linalg.svd的MemoryError用于大型矩阵【代码】

以下命令在Windows 7 Ultimate SP1 x64,Python 3.3.3 x64,numpy 1.8.0和16GB内存的计算机上将失败,这似乎足以完成任务.而且它在群集上也失败.python -c "import numpy as np;np.linalg.svd(np.random.random((25000,10000)))"关于原因有什么想法吗?谢谢.解决方法:我认为您刚刚达到了RAM的极限:我在Linux机器(64Gb RAM)上运行此命令,该进程占用了14.4 Gb.如果您有一台16Gb的计算机,那么其中的一部分将被操作系统和其他东西占用,因...

python-NumPy-将数组重塑为一维【代码】

我在将NumPy数组转换为1-D时遇到问题.我调查了在SO上发现的想法,但问题仍然存在.nu = np.reshape(np.dot(prior.T, randn(d)), -1) print 'nu1', str(nu.shape) print nu nu = nu.ravel() print 'nu2', str(nu.shape) print nu nu = nu.flatten() print 'nu3', str(nu.shape) print nu nu = nu.reshape(d) print 'nu4', str(nu.shape) print nu该代码产生以下输出:nu1 (1, 200) [[-0.0174428 -0.01855013 ... 0.01137508 0.00577...

python numpty 中shape的用法,numpy.array 的shape属性理解【代码】

numpy 创建的数组都有一个shape属性,它是一个元组,返回各个维度的维数。有时候我们可能需要知道某一维的特定维数。 二维>>> import numpy as np >>> y = np.array([[1,2,3],[4,5,6]]) >>> print(y) [[1 2 3][4 5 6]] >>> print(y.shape) (2, 3) >>> print(y.shape[0]) 2 >>> print(y.shape[1]) 3 y是一个两行三列的二维数组,y.shape[0]代表行数,y.shape[1]代表列数。 三维>>> x = np.array([[[1,2,3],[4,5,6]],[[7,8,9],[0...

寻求更有效的python numpy ravel重塑【代码】

我很好奇是否有更好的方法可以使numpy ravel重塑.我加载一大堆大图像,并得到一个形状数组(num-rasters,h,w),其中num-rasters是图像的数量,h / w是图像的高度/宽度(都相同)尺寸).我希望将数组转换为形状(h * w,num-rasters) 这是我现在做的方式:res = my_function(some_variable) #(num-rasters, h, w)res = res.ravel(order='F').reshape((res.shape[1] * res.shape[2], res.shape[0])) #(h*w, num-rasters)它工作正常,但是我的“...

python-重新采样并调整numpy数组的大小【代码】

我想按照这里的建议重新采样一个numpy数组Resampling a numpy array representing an image,但是这种重新采样将以一个因素进行,即x = np.arange(9).reshape(3,3) print scipy.ndimage.zoom(x, 2, order=1)将创建(6,6)的形状,但是如何在(4,6),(6,8)或(6,10)形状内重新采样数组以使其达到最佳近似度?解决方法:而不是将单个数字传递给zoom参数,而是给出一个序列:scipy.ndimage.zoom(x, zoom=(1.5, 2.), order=1) #array([[0, 0, 1, ...

python-优化Cython代码以进行numpy方差计算【代码】

我正在尝试优化我的cython代码,似乎还有很多改进的余地,这是IPython笔记本中%prun扩展的配置文件的一部分:7016695 function calls in 18.475 secondsOrdered by: internal timencalls tottime percall cumtime percall filename:lineno(function)400722 7.723 0.000 15.086 0.000 _methods.py:73(_var)814815 4.190 0.000 4.190 0.000 {method 'reduce' of 'numpy.ufunc' objects}1 1.855 1.85...

python-将1d NumPy中的值分配给类【代码】

如果我有一维数组:arr = np.array([ 5.243618, 5.219185, 4.755633, 5.685147, 5.2342 , 6.06918 ,5.324837, 4.857919, 5.768971, 4.310884, 4.442189, 4.883281,4.591852, 5.8325 , 5.865175, 5.642187, 5.941979, 6.30038 ,6.475276, 4.598086, 5.822819, 5.938378, 6.271719, 5.465492,4.230573, 4.331199, 4.912246, 4.878696, 5.393229, 4.857071,4.95928 , 4.83672 , 5.530075, 4.233449, 5...

Python Numpy:子数组到一个列表【代码】

我有一个看起来像这样的numpy数组x:In: x Out: array([[array([ 1.]), 0.0],[array([-0.00770808]), array([ 0.90825723])],[array([-0.0358526]), array([ 0.59267366])],[array([ 0.0088844]), array([ 0.89480382])],[array([ 0.0387529]), array([ 0.56483939])],[array([-0.08508252]), array([ 0.20664826])],[array([-0.04159874]), array([ 0.538443])],[array([ 0.07626737]), array([ 0.25998565])],[array([ 0.002226...

python-在SciPy / NumPy中查找复杂函数的零【代码】

有人告诉我,只要提供一阶导数,方法scipy.optimize.newton()就能解决复杂的功能.我不能使它工作. newton()的文档中没有提到任何复杂的函数.有人可以告诉我如何在SciPy中找到f(z)= 1 z ^ 2之类的函数的根吗?我需要解决更复杂的问题,但是一个简单的示例将极大地帮助我.解决方法:这是在IPython会话中将newton与复杂函数结合使用的示例:In [1]: def func(z):...: return 1 + z*z...: In [2]: def deriv(z):...: return 2*z......

python-PyCharm中的numpy问题

我似乎无法将numpy安装到PyCharm. 我从Python 2.7.8和PyCharm 3.4.1的最新安装开始. 然后我在PyCharm中安装了winpython以使用以下命令获取numpy和scipy软件包 文件>默认设置>项目译员>选择Python 2.7.7>安装pip和setuptools>正在安装winpython … 安装完这些后,我去使用numpy运行一个简单的代码,并继续出现“没有名为numpy的模块”的错误.我的教授做了完全相同的事情,并且他的工作很好(都使用Windows 7).解决方法:进入Winpython we...