如何详细解析使用Python将Excel文件进行转置的操作?

2026-04-30 16:371阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计512个文字,预计阅读时间需要3分钟。

如何详细解析使用Python将Excel文件进行转置的操作?

将Excel转换分为两种情况,一种是较为简单的,只需要行列转换,转换方法最简单,利用pandas库的`pivot_table`函数,代码如下:

pythonimport pandas as pddata=pd.read_excel('testT.xlsx')print('源数据:', data)

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

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

代码如下:

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

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

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

如果不添加header=False

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

转置之后:

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

如何详细解析使用Python将Excel文件进行转置的操作?

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)

取出来的fixed_valuesneed_T_columnsneed_T_value

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

进行总值对照是一样的

到此这篇关于python实现excel转置问题详解的文章就介绍到这了,更多相关python excel转置内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

本文共计512个文字,预计阅读时间需要3分钟。

如何详细解析使用Python将Excel文件进行转置的操作?

将Excel转换分为两种情况,一种是较为简单的,只需要行列转换,转换方法最简单,利用pandas库的`pivot_table`函数,代码如下:

pythonimport pandas as pddata=pd.read_excel('testT.xlsx')print('源数据:', data)

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

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

代码如下:

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

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

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

如果不添加header=False

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

转置之后:

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

如何详细解析使用Python将Excel文件进行转置的操作?

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)

取出来的fixed_valuesneed_T_columnsneed_T_value

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

进行总值对照是一样的

到此这篇关于python实现excel转置问题详解的文章就介绍到这了,更多相关python excel转置内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!