python 行转列

#encoding=utf-8  

print ‘中国‘  

#二维阵列变换 行转化成列,列转化成行
lista=[[1,2,3],[4,5,6],[7,8,9],[10,11,12]]  

#使用列表推导
listb=[[r[col] for r in lista] for col in range(len(lista[0]))]  

print listb  

#map实现 载入内存
print map(list,zip(*lista))  

#map实现 不载入内存
import itertools
print map(list,itertools.izip(*lista)) 
时间: 2024-10-10 07:18:51

python 行转列的相关文章

python 按二维数组的某行或列排序 (numpy lexsort)

lexsort支持对数组按指定行或列的顺序排序:是间接排序,lexsort不修改原数组,返回索引. 默认按最后一行元素有小到大排序, 返回最后一行元素排序后索引所在位置. 设数组a, 返回的索引ind, a可以是1维或2维数组,ind返回的是一维数组 对于一维数组, a[ind]就是排序后的数组. 对于二维数组下面会详细举例. import numpy as np >>> a array([[ 2,  7,  4,  2], [35,  9,  1,  5], [22, 12,  3, 

python中dataframe常见操作:取行、列、切片、统计特征值

mport numpy as npimport pandas as pd# iloc 主要用于索引取值 df = pd.DataFrame(np.arange(20).reshape(5, 4), index=list('ABCDE'), columns=list('wxyz'))print(df)# 取指定行print(df.head(2))print(df[1:2])print(df.tail(4)) # 统计列数print(df.columns.size) # 统计数据行数print(le

比较两个文本文档的不同,并显示第一出不同的行号列号

比较两个文本文档的区别,并打印出第一处不同点的行号列号 #!/usr/bin/env python#coding=utf-8file1=raw_input("please input the firest filename:")            //输入第一个文件名file2=raw_input("please input the second filename:")         //输入第二个文件名myfile1=open(file1)         

MySQL,排序,统计行转列

表 -- ------------------------------ Table structure for a-- ---------------------------- DROP TABLE IF EXISTS `a`; CREATE TABLE `a` ( `type` varchar(255) DEFAULT NULL, `name` varchar(255) DEFAULT NULL, `val` varchar(255) DEFAULT NULL ) ENGINE=InnoDB

GreenPlum之数组合并取交集及行变列、列变行函数

--1.利用INTERSECT关键字数组之间交集函数 CREATE OR REPLACE FUNCTION array_intersect(anyarray, anyarray) RETURNS anyarray AS $$ SELECT ARRAY( SELECT UNNEST($1) INTERSECT SELECT UNNEST($2)); $$ LANGUAGE SQL; select array_intersect(array[1,2,3],array[2,3,4]); --2.行变列

行转列、列转行

一:行转列 模式:N行转一列  本实验N取31.建表SQL> create table grade(id int,name varchar2(10),subject varchar2(10),grade number(3));2.插入实验数据insert into grade values(1,'Andy','Yuwen',11);insert into grade values(2,'Andy','Math',22);insert into grade values(3,'Andy','Eng

table行转列

table行转列 摘要 在使用ews调用exhange的收件箱的并在h5页面显示邮件详情的时候,因为返回的每封邮件的内容都是htmlbody,没有textbody.每封邮件又没什么规律,用正则表达式来匹配内容并不合适,另外又要保持原邮件的格式.这个确实很难统一.目前是使用iframe标签,将原邮件的html在iframe中展示.但问题又来了,如果邮寄中有大表格,大图片,如何保持邮件内容自适应? 思考 通常的做法是在head中添加meta标签 <meta name="viewport&quo

Oracle行转列、列转行的Sql语句总结(转)

多行转字符串 这个比较简单,用||或concat函数可以实现 select concat(id,username) str from app_userselect id||username str from app_user 字符串转多列 实际上就是拆分字符串的问题,可以使用 substr.instr.regexp_substr函数方式 字符串转多行 使用union all函数等方式 wm_concat函数 首先让我们来看看这个神奇的函数wm_concat(列名),该函数可以把列值以",&quo

SQL Server 行转列

语法: PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现 PIVOT的一般语法是:PIVOT(聚合函数(列) FOR 列 in (…) )AS P 完整语法: table_source PIVOT( 聚合函数(value_column) FOR pivot_column IN(<column_list>) ) UNPIVOT用于将列明转为列值(即列转行),在SQL Server 2000可以用UNION来实现 完整语法: table