Questions tagged «numpy»

NumPy是Python编程语言的科学和数字计算扩展。

4
从嵌套列表创建数组时,请抑制Numpy中的科学计数法
我有一个嵌套的Python列表,如下所示: my_list = [[3.74, 5162, 13683628846.64, 12783387559.86, 1.81], [9.55, 116, 189688622.37, 260332262.0, 1.97], [2.2, 768, 6004865.13, 5759960.98, 1.21], [3.74, 4062, 3263822121.39, 3066869087.9, 1.93], [1.91, 474, 44555062.72, 44555062.72, 0.41], [5.8, 5006, 8254968918.1, 7446788272.74, 3.25], [4.5, 7887, 30078971595.46, 27814989471.31, 2.18], [7.03, 116, 66252511.46, 81109291.0, 1.56], [6.52, 116, 47674230.76, 57686991.0, 1.43], [1.85, 623, …

7
numpy:从2D数组中获取随机的行集
我有一个非常大的2D数组,看起来像这样: a= [[a1, b1, c1], [a2, b2, c2], ..., [an, bn, cn]] 使用numpy,是否有一种简单的方法来获得一个新的2D数组,例如,从初始数组中获得2个随机行a(无需替换)? 例如 b= [[a4, b4, c4], [a99, b99, c99]]
159 python  numpy 

8
使用pip安装SciPy和NumPy
我正在尝试在要分发的程序包中创建所需的库。它需要SciPy和NumPy库。在开发过程中,我同时使用 apt-get install scipy 它安装了SciPy 0.9.0和NumPy 1.5.1,并且运行良好。 我想使用pip install- 做同样的事情,以便能够在我自己的包的setup.py中指定依赖项。 问题是,当我尝试: pip install 'numpy==1.5.1' 它工作正常。 但是之后 pip install 'scipy==0.9.0' 惨败 raise self.notfounderror(self.notfounderror.__doc__) numpy.distutils.system_info.BlasNotFoundError: Blas (http://www.netlib.org/blas/) libraries not found. Directories to search for the libraries can be specified in the numpy/distutils/site.cfg file (section [blas]) or by setting the BLAS environment variable. …
157 python  numpy  scipy  pip  apt 



6
如何获得Numpy中向量的大小?
遵循“只有一种明显的方法”,如何在Numpy中获得向量(一维数组)的大小? def mag(x): return math.sqrt(sum(i**2 for i in x)) 上面的方法有效,但是我不敢相信自己必须指定这样一个琐碎而核心的功能。
157 python  numpy 

6
如何将新行添加到空的numpy数组
使用标准的Python数组,我可以执行以下操作: arr = [] arr.append([1,2,3]) arr.append([4,5,6]) # arr is now [[1,2,3],[4,5,6]] 但是,我不能在numpy中做同样的事情。例如: arr = np.array([]) arr = np.append(arr, np.array([1,2,3])) arr = np.append(arr, np.array([4,5,6])) # arr is now [1,2,3,4,5,6] 我也研究了vstack,但是在vstack空数组上使用时,得到: ValueError: all the input array dimensions except for the concatenation axis must match exactly 那么,如何将新行追加到numpy中的空数组中?
157 python  numpy  scipy 

3
numpy数组的Python内存使用情况
我正在使用python分析一些大文件,并且遇到了内存问题,因此我一直在使用sys.getsizeof()来跟踪使用情况,但是numpy数组的行为很奇怪。这是一个涉及我必须打开的反照率地图的示例: >>> import numpy as np >>> import struct >>> from sys import getsizeof >>> f = open('Albedo_map.assoc', 'rb') >>> getsizeof(f) 144 >>> albedo = struct.unpack('%df' % (7200*3600), f.read(7200*3600*4)) >>> getsizeof(albedo) 207360056 >>> albedo = np.array(albedo).reshape(3600,7200) >>> getsizeof(albedo) 80 数据仍然存在,但是对象的大小(3600x7200像素图)已从约200 Mb变为80字节。我希望我的内存问题已经解决,并将所有内容都转换为numpy数组,但是我认为这种行为(如果为真)在某种程度上会违反某些信息论定律或热力学定律,等等。倾向于相信getsizeof()不适用于numpy数组。有任何想法吗?
156 python  numpy  sys 

6
如何选择给定条件的数组元素?
假设我有一个numpy数组x = [5, 2, 3, 1, 4, 5],y = ['f', 'o', 'o', 'b', 'a', 'r']。我想选择与大于1小于5 的元素y相对应的元素x。 我试过了 x = array([5, 2, 3, 1, 4, 5]) y = array(['f','o','o','b','a','r']) output = y[x > 1 & x < 5] # desired output is ['o','o','a'] 但这不起作用。我该怎么做?
156 python  numpy 

9
“克隆”行或列向量
有时将行或列向量“克隆”到矩阵很有用。克隆是指将行向量转换为 [1,2,3] 入矩阵 [[1,2,3] [1,2,3] [1,2,3] ] 或列向量,例如 [1 2 3 ] 进入 [[1,1,1] [2,2,2] [3,3,3] ] 在matlab或octave中,这很容易做到: x = [1,2,3] a = ones(3,1) * x a = 1 2 3 1 2 3 1 2 3 b = (x') * ones(1,3) b = 1 1 1 2 2 2 …


2
将MATLAB代码转换为Python的工具
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 4年前关闭。 改善这个问题 我的MS论文中有一堆MATLAB代码,现在我想将其转换为Python(使用numpy / scipy和matplotlib)并作为开源分发。我知道MATLAB与Python科学库之间的相似之处,手动转换它们的时间不会超过两周(前提是我每天都会努力一段时间)。我想知道是否已经有任何工具可以进行转换。

9
块矩阵到数组
我正在使用numpy。我有一个具有1列和N行的矩阵,并且我想从中获得具有N个元素的数组。 例如,如果我有M = matrix([[1], [2], [3], [4]]),我想得到A = array([1,2,3,4])。 为此,我使用A = np.array(M.T)[0]。有谁知道一种更优雅的方式来获得相同的结果? 谢谢!
149 python  arrays  matrix  numpy 

10
RuntimeWarning:numpy.dtype大小已更改,可能表明二进制不兼容
我尝试加载已保存的SVM模型时遇到此错误。我尝试卸载sklearn,NumPy和SciPy,然后再次重新安装最新版本(使用pip)。我仍然收到此错误。为什么? In [1]: import sklearn; print sklearn.__version__ 0.18.1 In [3]: import numpy; print numpy.__version__ 1.11.2 In [5]: import scipy; print scipy.__version__ 0.18.1 In [7]: import pandas; print pandas.__version__ 0.19.1 In [10]: clf = joblib.load('model/trained_model.pkl') --------------------------------------------------------------------------- RuntimeWarning Traceback (most recent call last) <ipython-input-10-5e5db1331757> in <module>() ----> 1 clf = joblib.load('sentiment_classification/model/trained_model.pkl') /usr/local/lib/python2.7/dist-packages/sklearn/externals/joblib/numpy_pickle.pyc …

12
x和y数组点的笛卡尔积变成2D点的单个数组
我有两个numpy数组,它们定义了网格的x和y轴。例如: x = numpy.array([1,2,3]) y = numpy.array([4,5]) 我想生成这些数组的笛卡尔积以生成: array([[1,4],[2,4],[3,4],[1,5],[2,5],[3,5]]) 在某种程度上,这并不是非常低效的,因为我需要循环执行多次。我假设将它们转换为Python列表并使用itertools.product并返回到numpy数组并不是最有效的形式。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.