Python操作Excel实战:Excel行转列

这篇具有很好参考价值的文章主要介绍了Python操作Excel实战:Excel行转列。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

# 1、原始数据准备

样例数据准备

地区 1m³ 2-5m³ 6-10m³ 11-20m³ 21-40m³ 地区 单价 计费单位 费用最小值 费用最大值
北京 130 120 110 100 90          
天津 130 120 110 100 90          
石家庄 130 120 110 100 90          
保定 140 130 120 110 100          
张家口 170 150 130 120 110          
邢台 140 120 110 100 90          
邯郸 140 130 120 110 100          
衡水 140 130 120 110 100          
沧州 130 120 110 100 90          
廊坊 150 130 120 100 90          
唐山 130 120 110 100 90          
秦皇岛 140 130 120 100 90          
承德 170 150 130 120 110          

#2、python脚本编写,新建app.py文件,内容如下:

import pandas as pd
import numpy as np


# 读取原始 Excel 文件
df = pd.read_excel('shanghaiTrailerFee.xlsx')

print(df.head())

# 选择第二行开始的数据,并每行复制 5 次
df_copy = pd.DataFrame(np.repeat(df.iloc[0:, :].values, 5, axis=0), columns=df.columns)

print('************************')

# print(df_copy.shape[0])

# print(df_copy.head())

totalRow = df_copy.shape[0]
print("总计行数为",totalRow)
for i in range(totalRow):
    
   if i % 5 == 0 :
       df_copy.values[i][6] = df_copy.values[i][0]
       df_copy.values[i][7] = df_copy.values[i][1]
       df_copy.values[i][8] = 'CBM'
       df_copy.values[i][9] = 0
       df_copy.values[i][10] = 1
   if i % 5 == 1 :
       df_copy.values[i][6] = df_copy.values[i][0]
       df_copy.values[i][7] = df_copy.values[i][2]
       df_copy.values[i][8] = 'CBM'
       df_copy.values[i][9] = 2
       df_copy.values[i][10] = 5
   if i % 5 == 2 :
       df_copy.values[i][6] = df_copy.values[i][0]
       df_copy.values[i][7] = df_copy.values[i][3]
       df_copy.values[i][8] = 'CBM'
       df_copy.values[i][9] = 6
       df_copy.values[i][10] = 10
   if i % 5 == 3 :
       df_copy.values[i][6] = df_copy.values[i][0]
       df_copy.values[i][7] = df_copy.values[i][4]
       df_copy.values[i][8] = 'CBM'
       df_copy.values[i][9] = 11
       df_copy.values[i][10] = 20
   if i % 5 == 4 :
       df_copy.values[i][6] = df_copy.values[i][0]
       df_copy.values[i][7] = df_copy.values[i][5]
       df_copy.values[i][8] = 'CBM'
       df_copy.values[i][9] = 21
       df_copy.values[i][10] = 40
        

df_copy.drop(df_copy.columns[[0,1,2,3,4,5]], axis=1, inplace=True)   
    

# 将处理后的数据保存到新的Excel文件中
df_copy.to_excel('new_shanghaiTrailerFee.xlsx', index=False)

# 3、执行python app.py

# 4、效果展示文章来源地址https://www.toymoban.com/news/detail-701340.html

地区 单价 计费单位 费用最小值 费用最大值
北京 130 CBM 0 1
北京 120 CBM 2 5
北京 110 CBM 6 10
北京 100 CBM 11 20
北京 90 CBM 21 40
天津 130 CBM 0 1
天津 120 CBM 2 5
天津 110 CBM 6 10
天津 100 CBM 11 20
天津 90 CBM 21 40
石家庄 130 CBM 0 1
石家庄 120 CBM 2 5
石家庄 110 CBM 6 10
石家庄 100 CBM 11 20
石家庄 90 CBM 21 40
保定 140 CBM 0 1
保定 130 CBM 2 5
保定 120 CBM 6 10
保定 110 CBM 11 20
保定 100 CBM 21 40
张家口 170 CBM 0 1
张家口 150 CBM 2 5
张家口 130 CBM 6 10
张家口 120 CBM 11 20
张家口 110 CBM 21 40
邢台 140 CBM 0 1
邢台 120 CBM 2 5
邢台 110 CBM 6 10
邢台 100 CBM 11 20
邢台 90 CBM 21 40
邯郸 140 CBM 0 1
邯郸 130 CBM 2 5
邯郸 120 CBM 6 10
邯郸 110 CBM 11 20
邯郸 100 CBM 21 40
衡水 140 CBM 0 1
衡水 130 CBM 2 5
衡水 120 CBM 6 10
衡水 110 CBM 11 20
衡水 100 CBM 21 40
沧州 130 CBM 0 1
沧州 120 CBM 2 5
沧州 110 CBM 6 10
沧州 100 CBM 11 20
沧州 90 CBM 21 40
廊坊 150 CBM 0 1
廊坊 130 CBM 2 5
廊坊 120 CBM 6 10
廊坊 100 CBM 11 20
廊坊 90 CBM 21 40
唐山 130 CBM 0 1
唐山 120 CBM 2 5
唐山 110 CBM 6 10
唐山 100 CBM 11 20
唐山 90 CBM 21 40
秦皇岛 140 CBM 0 1
秦皇岛 130 CBM 2 5
秦皇岛 120 CBM 6 10
秦皇岛 100 CBM 11 20
秦皇岛 90 CBM 21 40
承德 170 CBM 0 1
承德 150 CBM 2 5
承德 130 CBM 6 10
承德 120 CBM 11 20
承德 110 CBM 21 40

到了这里,关于Python操作Excel实战:Excel行转列的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【SQL开发实战技巧】系列(三十七):数仓报表场景☞从表内始终只有近两年的数据,要求用两列分别显示其中一年的数据聊行转列隐含信息的重要性

    【SQL开发实战技巧】系列(一):关于SQL不得不说的那些事 【SQL开发实战技巧】系列(二):简单单表查询 【SQL开发实战技巧】系列(三):SQL排序的那些事 【SQL开发实战技巧】系列(四):从执行计划讨论UNION ALL与空字符串UNION与OR的使用注意事项 【SQL开发实战技巧】系列

    2023年04月18日
    浏览(48)
  • 【Python处理EXCEL】基础操作篇3:用Python对Excel表格进行拼接合并

    目录 准备工作 一、横向拼接 1.1 一般拼接 1.2 指定键进行拼接,即指定某一列作为两个表的连接依据。 1.2.1 多对一 1.2.2 多对多 1.2.3 用on来指定多个连接键 1.2.4 指定左右连接键 1.2.5 索引当作连接键 1.3 连接的方式 1.3.1 内连接(inner) 1.3.2 左连接(left) 1.3.3 右连接(right)

    2024年01月17日
    浏览(57)
  • Python 操作 Excel

    之前看过一篇文章,说一个工作多年的老员工,处理数据时只会用复制粘贴到 Excel ,天天加班工作还完不成,后来公司就招了一个会 Python 的新人,结果分分钟就处理完成。所以工作中大家经常会使用 Excel 去处理以及展示数据,但是对于部分工作我们可以借助程序帮忙实现,

    2024年02月09日
    浏览(36)
  • python excel 操作

    excel文件内容如下: (1)获取一个sheet工作表  (2)行操作函数 (3)列操作函数 (4)单元格操作 (1) 基本函数用法演示 输出内容: (2)案例演示 输出: 结果:     xlwt中列宽的值表示方法:默认字体0的1/256为衡量单位。xlwt创建时使用的默认宽度为2960,既11个字符0的宽度

    2024年02月14日
    浏览(26)
  • python如何操作excel,在excel中读取和写入数据

    Excel 是 Microsoft 为使用 Windows 和 Apple Macintosh 操作系统的电脑编写的一款电子表格软件。直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,使 Excel 成为最流行的个人计算机数据处理软件。在 1993 年,作为 Microsoft Office 的组件发布了5.0版之后, Excel 就开始成为

    2024年02月03日
    浏览(60)
  • python如何操作excel文件

    Python可以使用多种方式操作Excel文件,下面介绍几种常用的方法: 使用 openpyxl 库:openpyxl是一个用于读写Excel文件的Python库,它可以读取和写入.xlsx格式的文件。以下是读取Excel文件的示例代码: 使用 pandas 库:pandas库是一个数据分析库,也可以用来读取和写入Excel文件。以下

    2024年02月12日
    浏览(45)
  • python: openpyxl操作Excel

    想要在文件中插入图片文件,需要安装pillow,安装文件:PIL-fork-1.1.7.win-amd64-py2.7.exe · font(字体类):字号、字体颜色、下划线等 · fill(填充类):颜色等 · border(边框类):设置单元格边框 · alignment(位置类):对齐方式 · number_format(格式类):数据格式 · protection(保护类):写保护

    2024年02月08日
    浏览(48)
  • Python小姿势 - Python操作Excel表格数据

    Python操作Excel表格数据 在日常工作中,我们经常会遇到一些需要对表格数据进行处理的情况,比如:数据清洗、数据分析、数据可视化等。对于这些任务,我们可以使用Python来进行操作。 在Python中操作Excel表格数据,我们可以使用xlrd和xlwt这两个库。xlrd是用于读取Excel文件的

    2023年04月25日
    浏览(49)
  • 用Python读写操作Excel数据!

    对比其它编程语言,我们都知道Python最大的优势是代码简单,有丰富的第三方开源库供开发者使用。伴随着近几年数据分析的热度,Python也成为最受欢迎的编程语言之一。而对于数据的读取和存储,对于普通人来讲,除了数据库之外,最常见的就是微软的Excel。 Microsoft Excel是

    2024年02月09日
    浏览(48)
  • Python进阶(九) -- 操作excel文件

    Excel是Microsoft(微软)为使用Windows和macOS操作系统开发的一款电子表格软件。Excel凭借其直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,一直以来都是最为流行的个人计算机数据处理软件。当然,Excel也有很多竞品,例如Google Sheets、LibreOffice Calc、Numbers等,

    2024年02月05日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包