在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设计】。

相关文章

使用Selenium破解新浪微博的四宫格验证码

使用Selenium破解新浪微博的四宫格验证码

在我们爬虫的时候经常会遇到验证码,新浪微博的验证码是四宫格形式。 可以采用模板验证码的破解方式,也就是把所有验证码的情况全部列出来,然后拿验证码的图片和这所有情况中的图片进行对比,然后获...

Django使用中间件解决前后端同源策略问题

Django使用中间件解决前后端同源策略问题

问题描述 前端时间在公司的时候,要使用angular开发一个网站,因为angular很适合前后端分离,所以就做了一个简单的图书管理系统来模拟前后端分离。 但是在开发过程中遇见了同源策略...

python处理csv数据的方法

本文实例讲述了python处理csv数据的方法。分享给大家供大家参考。具体如下: Python代码: 复制代码 代码如下: #coding=utf-8 __author__ = 'deh...

Python 操作MySQL详解及实例

Python 操作MySQL详解及实例 使用Python进行MySQL的库主要有三个,Python-MySQL(更熟悉的名字可能是MySQLdb),PyMySQL和SQLAlchemy。...

tensorflow -gpu安装方法(不用自己装cuda,cdnn)

TensorFlow™是一个基于数据流编程(dataflow programming)的符号数学系统,被广泛应用于各类机器学习(machine learning)算法的编程实...