python实现excel转置问题详解

作者:Vergil_Zsh 时间:2023-06-27 23:27:27 

excel转置分为两种情况,一个是较为简单的只需要行转列,列转行

python实现excel转置问题详解

最简单的转置,利用pandas里面的转置**.T**函数

代码如下:

import pandas as pd

data = pd.read_excel('testT.xlsx')
print('源数据: ',data)
print('==========================')
data = data.T
print('转置之后: ', data)

python实现excel转置问题详解

将转置之后的数据输入到excel中:

data.to_excel('转置完成后.xlsx',header=False)

python实现excel转置问题详解

如果不添加header=False

python实现excel转置问题详解

利用pandas进行简单的转置就算是完成了
二 较为复杂的转置
源数据:

python实现excel转置问题详解

转置之后:

python实现excel转置问题详解

python实现excel转置问题详解

将这四列列名转变成同一列中的Type中,然后添加一列Amount,将值放进去
观察可知道year、month、month_en是固定列

import pandas as pd

data = pd.read_excel('testT.xlsx')
# 确定最后所需要的列名
new_columns = ['year', 'month', 'month_en', 'Type', 'Amount']
# 获取固定列的值并转换为values
fixed_values = data.iloc[0:,0:3].values.tolist()
# 获取转置的列名
need_T_columns = data.columns.tolist()[3:]
# 获取需要转置的值
need_T_values = data.iloc[0:,3:].values.tolist()

list1 = []
listAll = []
for i in range(len(fixed_values)):
a = fixed_values[i]
for j in range(len(need_T_columns)):
list1 += a
list1.append(need_T_columns[j])
list1.append(need_T_values[i][j])
listAll.append(list1)
list1 = []

data = pd.DataFrame(listAll, columns=new_columns)
print(data)

python实现excel转置问题详解

取出来的fixed_valuesneed_T_columnsneed_T_value

python实现excel转置问题详解

无论是需要转置多么复杂的 只要分清楚什么是固定的列,什么是需要转置之后保留的列名(有的是多个日期),还有就是需要转置的值就好了
将上面的最终结果输出到excel里面

python实现excel转置问题详解

python实现excel转置问题详解

进行总值对照是一样的

来源:https://blog.csdn.net/KIKI_ZSH/article/details/127050505

标签:python,excel,转置
0
投稿

猜你喜欢

  • Python多线程threading模块用法实例分析

    2022-01-04 05:10:32
  • Python画图实现同一结点多个柱状图的示例

    2021-04-21 23:26:04
  • asp Response.flush 实时显示进度

    2011-04-14 10:31:00
  • 详解JS中的compose函数和pipe函数用法

    2024-04-18 10:59:25
  • 为2021年的第一场雪锦上添花:用matplotlib绘制雪花和雪景

    2022-02-01 23:19:56
  • python命令行工具Click快速掌握

    2021-08-13 08:03:58
  • asp如何验证信用卡是否可用?

    2010-06-10 18:39:00
  • numpy返回array中元素的index方法

    2023-10-04 22:43:10
  • MySQL数据库与表的最基本命令大盘点

    2010-08-31 14:29:00
  • 微信应用号(小程序)入门安装教程及IDE(破解版)下载

    2022-05-30 02:07:52
  • vue自定义指令directive的使用方法

    2024-05-09 10:43:39
  • 深入理解Python3 内置函数大全

    2022-06-27 22:11:36
  • Golang中异常处理机制详解

    2024-02-17 17:05:50
  • Go语言同步与异步执行多个任务封装详解(Runner和RunnerAsync)

    2024-05-28 16:14:16
  • Go语言时间处理必备技巧全解析

    2024-04-27 15:37:26
  • SQL server高并发生成唯一订单号的方法实现

    2024-01-21 21:24:55
  • Django点赞的实现示例

    2022-08-24 20:13:40
  • Django添加bootstrap框架时无法加载静态文件的解决方式

    2023-04-16 07:27:44
  • Python排序搜索基本算法之插入排序实例分析

    2023-12-28 14:20:25
  • 基于Keras 循环训练模型跑数据时内存泄漏的解决方式

    2022-06-28 10:24:00
  • asp之家 网络编程 m.aspxhome.com