【python/numpy随机选取训练集/测试集索引】教程文章相关的互联网学习教程文章

python – 基于一维中的唯一元素过滤numpy结构化数组【代码】

所以我有一个相当大(200k行)的结构化数组:recordtype = np.dtype([('x',np.float32),('y',np.float32),('z',np.float32), ('u',np.float32),('v',np.float32),('w',np.float32), ('d',np.float32),('T',np.float32),('mdot',np.float32), ('f',np.float32),('t',np.float32),('name',np.str_,14)]) data = np.loadtxt('tmp2.out',dtype=recordtype,skiprow...

python – 按两个条件过滤的Numpy数组【代码】

我正在尝试运行自定义kmeans聚类算法,并且无法按群集获取2-d numpy数组的每列(term)的文档频率.我当前的算法有两个numpy数组,一个原始数据集按术语[2000L,9500L]列出文档,一个是聚类赋值[2000L,].共有5个集群.我需要做的是创建一个列出每个集群的文档频率的数组 – 基本上是列数与不同数组中的行号匹配的每列中的计数.输出将是[5L,9500L]阵列(簇x项).我很难找到一种方法来做相当于一个countif和group by.下面是一些示例数据和我想要...

numpy需要安装System Python 2.7【代码】

我正在尝试学习python(在安装numpy 1.8.0以安装BioPython的过程中),并且当我尝试将numpy放在我的HD上时,我收到错误“numpy要求System Python 2.7安装”.我最近将我的操作系统从Mac OS X 10.6更新为Mavericks,并使用python 2.7(尽管我的计算机上安装了其他版本).我不是在mac上手动安装程序方面的专家,所以可能有一个简单的解决方案,但我无法理解为什么操作系统告诉我我正在使用的python版本(例如,如果我键入“python -V”,响应是“P...

c – 用boost.python交换numpy数组:pyublas或boost.numpy?【代码】

我正在通过py++/boost.python将C数据密集库与Python连接起来.在对我的程序进行概要分析后,我发现70%的运行时间花费在这样的代码上:ni = range(v2o.getHits()) tau = np.array([v2o.TofCorrectedTime[i] for i in ni]) q = [v2o.getCharge()[i] for i in ni]v2o.TofCorrectedTime从py输入__array_1_float_2368. v2o.getCharge()也是从py类型_impl_details_range_iterator_.大小约为2000,从这些py数组包装器到numpy的转换很慢:In ...

python – 生成随机3元素Numpy整数数组,总和为3【代码】

我需要用随机整数填充三个元素的numpy数组,使得数组的总和为3(例如[0,1,2]). 据我估算,有10个可能的数组: 111,012,021,102,120,201,210,300,030,003 我的想法是使用randint随机生成1到10之间的整数,然后使用查找表从上面的组合列表中填充数组. 有谁知道更好的方法?解决方法:我是这样做的:>>> import numpy as np >>> a=np.array([[1,1,1],[0,1,2],[0,2,1],[1,0,2],[1,2,0],[2,0,1],[2,1,0],[3,0,0],[0,3,0],[0,0,3]]) >>> a[np....

python – numpy代码中的溢出错误【代码】

我有一些代码在计算中使用大整数.因为我也使用numpy,似乎有些变量被设置为类型’numpy.int64′,这意味着它们过流.我怎么能绕过这个? 如果您运行下面的代码,您将看到“调试信息”下的行.例如19 1 72.7204246831 524288 19 2 2437717.7229 274877906944 19 3 149857055799.0 144115188075855872 19 4 1.73379003246e+16 0其中前两列是n和w,最后一列是2 **(n * w).显然0是溢出错误. 我怎么能绕过这个?#!/usr/bin/python from __futu...

python – Numpy数组,填充单个列的空值【代码】

我有一个numpy数组,它是使用python列表中的np.array()生成的,所以我的条目是字符串,但有些值是空白的.这是一个示例数组:['1', '1', '1', '1'] ['1', '1', '', '1'] ['1', '1', '1', '1'] ['1', '', '1', '1']没有’NaN’或’None’,它是空白的.我希望能够使用相同的值填充特定列中的所有空白单元格.解决方法:您可以使用numpy.where()来实现此目的.In [8]: arr = numpy.array(['','1','2','3',''])In [9]: arr[numpy.where(arr==''...

Python Numpy或Pandas线性插值用于与Datetime相关的值【代码】

我的数据看起来如下,但我也可以控制它的格式.基本上,我想使用带有Numpy或Pandas的Python来插入数据集,以实现逐秒插值数据,从而使分辨率更高. 因此,我希望在保持原始值的同时,在我当前拥有的每个实际值之间进行线性插值并生成新值. 我如何用Pandas或Numpy来实现这一目标? 举个例子,我有这种类型的数据:TIME ECI_X ECI_Y ECI_Z2013-12-07 00:00:00, -7346664.77912, -13323447.6311, 21734849.5...

python – 将十进制范围转换为Numpy数组,每个位都是一个数组元素【代码】

我创建了一个小函数,它将整数,长度作为输入,并返回[0:2 ** length-1]范围内所有2 **长度整数的二进制表示的numpy数组.import numpy as npdef get_bitstrings(length):# We need to binary-fy 2^length numbers.iterations = 2**length# Pre-allocate memory.the_array = np.zeros((iterations, length))# Go through all decimals in the range [0:iterations-1]for num in range(iterations):# Get binary representation in str...

Python中Numpy和MpMath之间的互操作性【代码】

我有一个numpy数组A,其mpf元素具有十进制精度100.如果我决定采用A的numpy dot产品,这个精度会被抛弃吗? 如果是这种情况,有没有办法将numpy数组转换为mpmath矩阵,所以我可以保持精度?解决方法:Numpy数组可以保存对象,特别是mpf对象,它们的方法(如dot)可以使用这些对象的加法/乘法方法.例:import mpmath import numpy mpmath.mp.dps = 25 # higher precision for demonstration a = [mpmath.sin(mpmath.pi*n/3) for n in rang...

python – 为什么我的Numpy测试代码比Matlab慢2X【代码】

我一直在用Python开发基于菲涅耳系数的反射率求解器,因为Python Numpy中的性能比Matlab慢2倍,所以我遇到了一些障碍.我已经将问题代码提炼成一个简单的示例,以显示在每种情况下执行的操作: 测试用例的Python代码:import numpy as np import timedef compare_fn(i):a = np.random.rand(400)vec = np.random.rand(400)t = time.time()for j in xrange(i):a = (2.3 + a * np.exp(2j*vec))/(1 + (2.3 * a * np.exp(2j*vec)))print (ti...

为什么要将python列表转换为numpy数组?

有一种方法可以将python中的数字列表转换为numpy数组. 但是我试过的简单函数,例如numpy.average(x),无论x是简单的python列表还是numpy数组都可以工作.在哪种类型的情况下,需要将python中的列表(或数组)转换为numpy中的数组?解决方法:到目前为止给出的答案非常好.通过其方法将大量NumPy功能绑定到数组对象的简单方便非常有用.这是尚未提及的内容. 在将列表传递给NumPy函数之前将列表转换为数组的一个非常好的理由是,在内部,大多数N...

python – 在numpy中生成缩小范围的1d数组【代码】

我想在numpy中生成一个1D数组,如下所示:In [181]: np.concatenate((np.arange(1, 4), np.arange(2, 4), np.arange(3, 4))) Out[181]: array([1, 2, 3, 2, 3, 3])在更大范围内,伪代码:concatenate(1:n, 2:n, 3:n, ..., n:n)是否有一种矢量化的方式在numpy和/或pandas中这样做?解决方法: >>> np.triu_indices(4, 1)[1] array([1, 2, 3, 2, 3, 3])(正如@SaulloCastro指出的那样,我没有像在原始的,接受的答案中那样使用各种索引到网...

python – Numpy递归比较行中的所有数据【代码】

我有一个booleen numpy数组如下:bool_arr = array([[ True, True, True, True],[False, False, True, True],[False, False, False, True]], dtype=bool)我想沿着行比较,仅对第一个True实例返回True,否则返回False.所以我想bool_arr的比较的正确答案是:ans = array([[ True, False, False, False],[False, False, True, False],[False, False, False, True]], dtype=bool)我无法弄清楚没有循环的“Numpy”方法.解决方...

Python Basics with Numpy【图】

Welcome to your first assignment. This exercise gives you a brief introduction to Python. Even if youve used Python before, this will help familiarize you with functions well need. Instructions:You will be using Python 3. Avoid using for-loops and while-loops, unless you are explicitly told to do so. Do not modify the (# GRADED FUNCTION [function name]) comment in some cells. Your work would not b...