在Python中等距取出一个数组其中n个数的实现方式

yipeiwu_com6年前Python基础

应用场景:

实验中不断得到新数据,想将数据图形化,但随着时间推移,数据越来越多,

此时需要我们等距选择数据列表中固定数量的数据,来进行图形化。

注:保留首尾数据。

import numpy as np
 
a = np.arange(0, 10)
b = np.arange(0, 15)
c = np.arange(0, 20)
d = np.arange(0, 30)
e = np.arange(10, 40)
f = np.arange(0, 100)
 
 
def pick_arange(arange, num):
 if num > len(arange):
  print("# num out of length, return arange:", end=" ")
  return arange
 else:
  output = np.array([], dtype=arange.dtype)
  seg = len(arange) / num
  for n in range(num):
   if int(seg * (n+1)) >= len(arange):
    output = np.append(output, arange[-1])
   else:
    output = np.append(output, arange[int(seg * n)])
  print("# return new arange:", end=' ')
  return output
 
 
print(pick_arange(a, 10))
print(pick_arange(a, 11))
print(pick_arange(b, 10))
print(pick_arange(c, 10))
print(pick_arange(d, 10))
print(pick_arange(e, 10))
print(pick_arange(f, 10))
print(pick_arange(f, 20))

以上这篇在Python中等距取出一个数组其中n个数的实现方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python操作redis方法总结

连接 Redis import redisc 连接方式:redis提供了2个方法 1:StrictRedis:实现大部分官方的命令 2:Redis:是StrictRedis的子类,用于...

在OpenCV里使用Camshift算法的实现

在OpenCV里使用Camshift算法的实现

前面学习过Meanshift算法,在观察这个结果标记时,会发现有这样一个问题,如下图: 汽车比较远时,用一个很小的窗口就可以把它框住,这是符合近大远小的投影原理,当比较近的时候如下:...

Tensorflow 自带可视化Tensorboard使用方法(附项目代码)

Tensorflow 自带可视化Tensorboard使用方法(附项目代码)

Tensorboard: 如何更直观的观察数据在神经网络中的变化,或是已经构建的神经网络的结构。上一篇文章说到,可以使用matplotlib第三方可视化,来进行一定程度上的可视化。然而T...

python实现画五角星和螺旋线的示例

python实现画五角星和螺旋线的示例

如下所示: # -*- coding:UTF-8 -*- __author__ = "zhangguodong" __time__ = "2017.11.16" import t...

Python基于ThreadingTCPServer创建多线程代理的方法示例

本文实例讲述了Python基于ThreadingTCPServer创建多线程代理的方法。分享给大家供大家参考,具体如下: #coding=utf8 from BaseHTTPServ...