zoukankan      html  css  js  c++  java
  • 学习笔记5—Python 将多维数据转为一维数组 (总结)

    [python] view plain copy
    1. <code class="language-python">import operator  
    2. from functools import reduce  
    3. a = [[1,2,3], [4,6], [7,8,9,8]]  
    4. print(reduce(operator.add, a))  
    5. [1, 2, 3, 4, 6, 7, 8, 9, 8]</code>  
    1. a = [[1,2,3], [5, 8], [7,8,9]]
    2. l=[]
    3. for m in range(0,3):
    4. for i in a[m]:
    5. l.append(i)
    6. print(l)
    7. [1, 2, 3, 5, 8, 7, 8, 9]
    1. from itertools import chain
    2. b=[[1,2,3], [5,8], [7,8,9]]
    3. c=list(chain(*b))
    4. print(c)
    5. [1, 2, 3, 5, 8, 7, 8, 9]
    1. a=[[1,2,3], [5,8], [7,8,9]]
    2. a= eval('['+str(a).replace(' ','').replace('[','').replace(']','')+']')
    3. print(a)
    4. [1, 2, 3, 5, 8, 7, 8, 9]
    1. def flatten(a):
    2. if not isinstance(a, (list, )):
    3. return [a]
    4. else:
    5. b = []
    6. for item in a:
    7. b += flatten(item)
    8. return b
    1. if __name__ == '__main__':
    2. a = [[[1,2],3],[4,[5,6]],[7,8,9]]
    3. print(flatten(a))
    4. [1, 2, 3, 4, 5, 6, 7, 8, 9]
    1. ab = [[1,2,3], [5,8], [7,8,9]]
    2. print([i for item in ab for i in item])
    3. [1, 2, 3, 5, 8, 7, 8, 9]


    2、矩阵转数组:data = [[1,2,3,]] 去掉外层----> data = data[0,:]--->[1,2,3]

    3、数组:data = [[1],[2]] ---> data = data.flatten() ---> [1,2]

    4、列表:list = [[1],[2]] ---> list1 = [x for [x] in list] ---> list1 = [1,2]

    5、将dataframe转成list:  data = np.array(data).tolist() (先将dataframe转成矩阵,再将矩阵转成list)

  • 相关阅读:
    文件处理
    字符编码复习
    python小知识点复习
    计算机基础
    前端html/css/script基础
    前端(css引入的3中方式)
    (数据库之pymysql)
    Spring、Spring MVC、Struts2优缺点整理
    Java Web 高性能开发,前端的高性能
    HDFS的工作原理扫扫盲
  • 原文地址:https://www.cnblogs.com/hechangchun/p/9557824.html
Copyright © 2011-2022 走看看