Questions tagged «numpy»

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

3
如何将numpy数组列表转换为单个numpy数组?
假设我有; LIST = [[array([1, 2, 3, 4, 5]), array([1, 2, 3, 4, 5],[1,2,3,4,5])] # inner lists are numpy arrays 我尝试转换; array([[1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5]) 我现在正在vstack上通过迭代来解决它,但是对于特别大的LIST来说确实很慢 您对最佳有效方法有何建议?
100 python  list  numpy 

4
Numpy isnan()在浮点数组上失败(适用于pandas数据框)
我有一个浮点数数组(一些正常数字,一些nans),它们是从对熊猫数据框的应用中得出的。 由于某种原因,numpy.isnan在此数组上失败,但是,如下所示,每个元素都是浮点数,numpy.isnan在每个元素上正确运行,变量的类型肯定是一个numpy数组。 这是怎么回事?! set([type(x) for x in tester]) Out[59]: {float} tester Out[60]: array([-0.7000000000000001, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, …
100 python  arrays  numpy  pandas 



2
用python熊猫装箱列
我有一个带有数值的数据框列: df['percentage'].head() 46.5 44.2 100.0 42.12 我想查看该列作为箱数: bins = [0, 1, 5, 10, 25, 50, 100] 我如何将结果作为垃圾箱value counts? [0, 1] bin amount [1, 5] etc [5, 10] etc ......

3
numpy数组的argmax返回非固定索引
我正在尝试获取Numpy数组中最大元素的索引。可以使用来完成numpy.argmax。我的问题是,我想在整个数组中找到最大的元素并获取其索引。 numpy.argmax 既可以沿一个轴(不是我想要的)应用,也可以沿扁平数组(这是我想要的一种)应用。 我的问题是,当我想要多维索引时,使用numpy.argmaxwithaxis=None返回平面索引。 我可以divmod用来获取非固定索引,但这很难看。有什么更好的方法吗?

5
python如何用零填充numpy数组
我想知道如何使用python 2.6.6和numpy版本1.5.0用零填充2D numpy数组。抱歉! 但是这些是我的局限性。因此我不能使用np.pad。例如,我想a用零填充以使其形状匹配b。我想这样做的原因是我可以这样做: b-a 这样 >>> a array([[ 1., 1., 1., 1., 1.], [ 1., 1., 1., 1., 1.], [ 1., 1., 1., 1., 1.]]) >>> b array([[ 3., 3., 3., 3., 3., 3.], [ 3., 3., 3., 3., 3., 3.], [ 3., 3., 3., 3., 3., 3.], [ …
99 python  arrays  numpy  pad 


6
脾气暴躁的索引切片而不会丢失尺寸信息
我正在使用numpy,并希望在不丢失维度信息的情况下对行进行索引。 import numpy as np X = np.zeros((100,10)) X.shape # >> (100, 10) xslice = X[10,:] xslice.shape # >> (10,) 在此示例中,xslice现在为1维,但我希望它为(1,10)。在R中,我将使用X [10,:,drop = F]。numpy中是否有类似的东西。我在文档中找不到它,也没有看到类似的问题。 谢谢!
98 python  numpy 


7
在Python中绘制快速傅立叶变换
我可以访问NumPy和SciPy,并希望为数据集创建一个简单的FFT。我有两个列表,一个是y值,另一个是这些y值的时间戳。 将这些列表输入SciPy或NumPy方法并绘制所得FFT的最简单方法是什么? 我查看了示例,但是它们都依赖于创建具有一定数量的数据点和频率等的伪造数据集,而并没有真正展示如何仅使用一组数据和相应的时间戳来做到这一点。 。 我尝试了以下示例: from scipy.fftpack import fft # Number of samplepoints N = 600 # Sample spacing T = 1.0 / 800.0 x = np.linspace(0.0, N*T, N) y = np.sin(50.0 * 2.0*np.pi*x) + 0.5*np.sin(80.0 * 2.0*np.pi*x) yf = fft(y) xf = np.linspace(0.0, 1.0/(2.0*T), N/2) import matplotlib.pyplot as plt …
98 python  numpy  scipy  fft 

4
DataFrame中的字符串,但dtype是object
为什么Pandas告诉我我有对象,尽管所选列中的每个项目都是一个字符串-即使经过显式转换也是如此。 这是我的DataFrame: <class 'pandas.core.frame.DataFrame'> Int64Index: 56992 entries, 0 to 56991 Data columns (total 7 columns): id 56992 non-null values attr1 56992 non-null values attr2 56992 non-null values attr3 56992 non-null values attr4 56992 non-null values attr5 56992 non-null values attr6 56992 non-null values dtypes: int64(2), object(5) 他们五个dtype object。我将这些对象明确转换为字符串: for c …
96 python  pandas  numpy  types  series 

4
imshow()的数字太小
我正在尝试使用imshow()可视化一个numpy数组,因为它类似于Matlab中的imagesc()。 imshow(random.rand(8, 90), interpolation='nearest') 最终的图形在灰色窗口的中心很小,而大部分空间都未被占用。如何设置参数以使图形更大?我尝试了figsize =(xx,xx),这不是我想要的。谢谢!

1
将HDF5用于大型阵列存储(而不是平面二进制文件)是否具有分析速度或内存使用优势?
我正在处理大型3D阵列,通常需要以各种方式对其进行切片以进行各种数据分析。一个典型的“立方体”可以达到〜100GB(将来可能会更大) 似乎对于python中的大型数据集,通常推荐的文件格式是使用HDF5(h5py或pytables)。我的问题是:使用HDF5来存储和分析这些多维数据集,而不是将它们存储在简单的平面二进制文件中,对速度或内存使用有好处吗?HDF5是否更适合表格数据,而不是像我正在使用的大型数组?我看到HDF5可以提供很好的压缩,但是我对处理速度和处理内存溢出更感兴趣。 我经常只想分析多维数据集的一个大子集。pytables和h5py的一个缺点似乎是,当我对数组进行切片时,我总是得到一个numpy数组,占用了内存。但是,如果我对平面二进制文件的numpy内存映射进行切片,则可以获得一个视图,该视图将数据保留在磁盘上。因此,看来我可以更轻松地分析数据的特定扇区,而不会耗尽内存。 我已经浏览了pytables和h5py,到目前为止,还没有看到两者对我的好处。
96 python  numpy  hdf5  pytables  h5py 

4
从NumPy数组中选择特定的行和列
我一直在发疯,试图找出我在这里做错了什么愚蠢的事情。 我正在使用NumPy,并且我想从中选择特定的行索引和特定的列索引。这是我的问题的要点: import numpy as np a = np.arange(20).reshape((5,4)) # array([[ 0, 1, 2, 3], # [ 4, 5, 6, 7], # [ 8, 9, 10, 11], # [12, 13, 14, 15], # [16, 17, 18, 19]]) # If I select certain rows, it works print a[[0, 1, 3], :] …

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.