你的代码很少出错。在my vector a should be of dimension 10, but it isn't!

这是因为你不会在列表中只添加10个元素。看看你的逻辑。在for t in range(0,10,1):

for j in range(0, len(c)):

if c[j]>t/10:

a.append(sum(c[j]>t))

对于每个阈值,t,每次迭代一个c中的所有12个项目,并向列表中追加一些内容。总的来说,你有120个项目。你应该做的是(在伪代码中):

^{pr2}$

numpy.where()提供满足条件的数组中的索引,因此您只需计算每次获得的索引数。我们将得到完整的解决方案是片刻。在

另一个潜在的错误是t/10,在python2中是整数除法,对于所有阈值都将返回0。正确的方法是使用t/10.强制浮点除法。如果您使用的是python3,那么默认情况下会得到浮点除法,所以这可能不是问题。请注意,您做了c[j] > t,其中t介于0和10之间。总的来说,你的c[j] > t逻辑是错误的。你想对所有的元素使用一个计数器,就像其他答案告诉你的那样,或者把它全部分解成一行行的列表理解。在

最后,这里有一个充分利用numpy的解决方案。在import numpy as np

c = np.array([0.3, 0.2, 0.3, 0.6, 0.9, 0.1, 0.2, 0.5, 0.3, 0.5, 0.7, 0.1])

thresh = np.arange(0, 1, 0.1)

counts = np.empty(thresh.shape, dtype=int)

for i, t in enumerate(thresh):

counts[i] = len(np.where(c > t)[0])

print counts

输出:[12 10 8 5 5 3 2 1 1 0]

让numpy处理引擎盖下的循环比Python级别的循环更快。用于演示:import timeit

head = """

import numpy as np

c = np.array([0.3, 0.2, 0.3, 0.6, 0.9, 0.1, 0.2, 0.5, 0.3, 0.5, 0.7, 0.1])

thresh = np.arange(0, 1, 0.1)

"""

numpy_where = """

for t in thresh:

len(np.where(c > t)[0])

"""

python_loop = """

for t in thresh:

len([element for element in c if element > t])

"""

n = 10000

for test in [numpy_where, python_loop]:

print timeit.timeit(test, setup=head, number=n)

在我的电脑上会产生以下计时结果。在0.231292377372

0.321743753994

python 向量元素判断_python;计算向量的元素相关推荐

  1. Python数据分析学习笔记:计算向量夹角

    Python数据分析学习笔记:计算向量夹角 通过计算两个向量夹角了解两个向量之间的相关性. # 计算向量夹角import numpy as npdef included_angle(a, b):a_n ...

  2. python 使用 numpy 判断两个向量是否平行

    背景 在网上找 python 判断两个向量是否平行,没有找到直接可用的代码. 于是,写了一个 is_parallel 的函数. 代码 import numpy as npdef is_parallel ...

  3. python 中自己写方法 计算向量长度 / 实现向量归一化

    # coding=utf-8 import math class Vector(object):"""docstring for Vector""&q ...

  4. python+appium判断元素存在_python自动化测试应用--Appium元素篇

    1.1概要 本篇将对和界面元素相关的内容做讲解,比如,查找元素的几种常见方法,还将介绍如何查看app界面上的元素去做定位,最后还将新手经常遇到的问题做个简单的回答. 1.2 查找app界面元素的工具 ...

  5. 向量概念,零向量,向量取反,计算向量的长度,单位向量

    参考的是<游戏和图形学的3D数学入门教程>,非常不错的书,推荐阅读,老外很喜欢把一个东西解释的很详细. 1.向量概念: 具有方向和大小.没有位置观念.比如下图红圈圈中的两个向量是相同的,因 ...

  6. python元素求和_Python之list对应元素求和的方法

    本次分享将讲述如何在Python中对多个list的对应元素求和,前提是每个list的长度一样.比如:a=[1,2,3], b=[2,3,4], c=[3,4,5], 对a,b,c的对应元素求和,输出应 ...

  7. python怎么算积分_python计算积分

    python有多个方法计算积分,下面介绍其中三个,以下式为例: 方法一:直接用numpy计算 start = 1 stop = 2 length = 101 x = np.linspace(start ...

  8. python列表内元素求和_Python之list对应元素求和

    本次分享将讲述如何在Python中对多个list的对应元素求和,前提是每个list的长度一样.比如:a=[1,2,3], b=[2,3,4], c=[3,4,5], 对a,b,c的对应元素求和,输出应 ...

  9. python怎么算阶乘_python计算阶乘

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 问题本身很简单,主要是通过这个小问题来演示python的一些用法,例如测试代码运 ...

  10. python中的输出list中元素方法_python 输出所有列表元素的乘积

    def multiply_list(items): tot = 1 for x in items: tot *= x return tot print(multiply_list([1,2,-8])) ...

最新文章

  1. 《微博营销》——微博能为你做什么
  2. 又有3位顶级数学家加盟华为,都是菲尔兹奖得主
  3. js经典试题之ES6
  4. SQL里各种联合查询总结
  5. Java jdbctemplate赋值_JDBCTemplate基本使用
  6. Android之Launcher分析和修改4——初始化加载数据
  7. flutter生成源代码_Flutter创建工程的主要代码详解
  8. android分屏模式_浅谈 Android 7.0 多窗口分屏模式的实现
  9. 安装和配置SQL Server Reporting Services (SSRS)
  10. mt4软件较稳定的交易商服务器地址,外汇MetaTrader 4 常见交易商服务器ip地址汇总...
  11. Android 使用 sendevent 模拟鼠标和键盘事件
  12. h710阵列卡支持最大硬盘_ORICO推爆品五盘位硬盘柜,一拖五最大支持80TB,你会买吗?...
  13. Win 10 桌面简单美化(+开始菜单 TileGenie)
  14. 考上985的研究生了!
  15. QCC原因分析阶段之常用工具 - QCC小组活动推行知识系列介绍(四)
  16. 程序员最爱的11个在线社区,你去过几个?
  17. gta5怎么设置画质最好_GTA5画面如何设置最好_GTA5画质设置成最高配置推荐-win7之家...
  18. 北航计算机考博经验,北京航空航天大学考博经历
  19. L9953LXP_车门致动器驱动器
  20. Java实现蓝桥杯二项式的系数规律

热门文章

  1. 基于stm32、0.96寸OLED实现的俄罗斯方块小游戏(详细源码注释)
  2. echart饼图标签重叠_Echarts 解决饼图文字过长重叠的问题
  3. 乐鑫代理启明云端分享|ESP32驱动1.54inch(240*240)彩屏
  4. 启明云端直播来了!真的来了!15号晚7:30分启明云端带着8ms菇凉正式亮相立创直播,带你一起畅玩彩屏!参与直播互动的小伙伴将会得到红包大奖及获得SigmarstarSSD201开发板\核心板的机会
  5. 文件保存到服务器失败,Office 2010在服务器共享文件夹中保存文件失败
  6. 雷达波形样式_案例分析 | 基于XSIM的雷达电子对抗仿真
  7. 【数的专题】——欧拉筛
  8. Linux CentOS7 rsync通过服务同步、linux系统日志、screen工具
  9. [BZOJ 1124][POI 2008] 枪战 Maf
  10. Codeforces Round #377 (Div. 2) E. Sockets