使用python实现多维数据降维操作

 更新时间:2020年02月24日 15:24:12   作者:yaqinweiliang  
今天小编就为大家分享一篇使用python实现多维数据降维操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

一,首先介绍下多维列表的降维

def flatten(a):
 for each in a:
  if not isinstance(each,list):
   yield each
  else:
   yield from flatten(each)
if __name__ == "__main__":
 a = [[1,2],[3,[4,5]],6]
 print(list(flatten(a)))

二、这种降维方法同样适用于多维迭代器的降维

from collections import Iterable
 
def flattern(a):
 for i in a:
  if not isinstance(i,Iterable) or isinstance(i,str):
   yield i
  else:
   yield from flattern(i)
if __name__ == "__main__":
 a = [[1,2],(3,4,tuple(5,)),["6,7,8"],[9,range(10,20,1)]]
 print(list(flattern(a)))

iterable:可迭代的,迭代器,在Python中iterable被认为是一个对象,这个对象可以一次返回它的一个成员(也就是对象里面的元素),Python中的string,list,tuple,dict,file,xrange都是可迭代的,都属于iterable对象,可迭代的对象都是可以遍历的,实际上Python中有很多iterable类型是使用iter()函数来生成的。

补充:将一个多维数组彻底的降维

废话不多说,直接上代码

const flattenDeep = arr =>
 Array.isArray(arr)
 ? arr.reduce((a, b) => [...a, ...flattenDeep(b)], [])
 : [arr];

以上这篇使用python实现多维数据降维操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • centos+nginx+uwsgi部署django项目上线

    centos+nginx+uwsgi部署django项目上线

    本文主要介绍了centos+nginx+uwsgi部署django项目上线,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • pytorch动态网络以及权重共享实例

    pytorch动态网络以及权重共享实例

    今天小编就为大家分享一篇pytorch动态网络以及权重共享实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Python读写TOML文件的示例代码

    Python读写TOML文件的示例代码

    TOML 文件表示(Tom's Obvious,最小语言),它的语法主要由键=值对组成,本文主要为大家详细介绍了如何使用Python读写TOML文件,感兴趣的小伙伴可以了解下
    2023-08-08
  • python 截取 取出一部分的字符串方法

    python 截取 取出一部分的字符串方法

    下面小编就为大家带来一篇python 截取 取出一部分的字符串方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • Python中的time和datetime模块使用方法详解

    Python中的time和datetime模块使用方法详解

    Python 中的 time 和 datetime 模块是处理时间和日期的重要工具,它们可以执行各种操作,如获取当前时间、格式化日期、计算时间差等,本文将分享这两个模块的使用方法,包括安装、基本功能、日期时间对象、时间戳、时间间隔、日期时间格式化和示例代码
    2023-11-11
  • Python列表对象实现原理详解

    Python列表对象实现原理详解

    这篇文章主要介绍了Python列表对象实现原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • python实现静态服务器

    python实现静态服务器

    这篇文章主要为大家详细介绍了python实现静态服务器,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • Python实现读取文本文件并转换为pdf

    Python实现读取文本文件并转换为pdf

    这篇文章主要为大家详细介绍了如何使用Python简便快捷地完成TXT文件到PDF文档的转换,满足多样化的文档处理需求,感兴趣的小伙伴可以参考下
    2024-04-04
  • python中定时器的高级使用方式详解

    python中定时器的高级使用方式详解

    在Python编程中,定时器是一种非常有用的工具,用于执行特定任务或函数,本文将介绍一些高级的定时器使用方式,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-02-02
  • Pytorch使用Visdom进行数据可视化的示例代码

    Pytorch使用Visdom进行数据可视化的示例代码

    pytorch Visdom可视化,是一个灵活的工具,用于创建,组织和共享实时丰富数据的可视化,这个博客简要介绍一下在使用Pytorch进行数据可视化的一些内容,感兴趣的朋友可以参考下
    2023-12-12

最新评论