将“for”循环的输出写入 PYTHON 中的 excel

2024-04-07

我有以下代码:

my_list = ["US", "IT", "ES", "NL"]
for i in my_list:
    A = sum_products_by_country(world_level,i)
    df = pd.DataFrame({'value':A})
    Descending = df.sort_values( by='value', ascending = 0 )
    Top_5 = Descending[0:5]
    print(Top_5)

“sum_products_by_country”是一个创建的函数,它将数据框(在我的例子中名为“world_level”)和国家/地区名称作为参数,并返回该国家/地区的产品总和。使用此循环,我找到 my_list 中每个国家/地区的前 5 个产品和总和。这是该循环的输出:

US          value
Product  


B          1492

H          455

BB         351

C          119

F          117

IT          value
Product


P           346
U           331

A           379

Q           190

D          1389

ES         value
Product 


P          3046

U3         331

A          379

Q          1390

DD         10389

NL         value
Product 


P          3465

U          3313

AA         379

2Q         190

D          189

我想使用以下命令将此输出写入 Excel 工作表中:

writer = pd.ExcelWriter('top products.xlsx', engine='xlsxwriter')
Top_5.to_excel(writer, sheet_name='Sheet1')
writer.save()

你能告诉我上面的代码应该放在哪里才能获得所需的excel文档吗? 还有一种方法可以在我的 Excel 文档顶部仅获取一次列名称(国家/地区、产品、值),而不是分别获取每个国家/地区的列名称吗?所以我想要这样的东西:

 Country   Product   value

  US        
           B          1492
           H          455
           BB         351
           C          119
           F          117

  IT          

           P           346
           U           331
           A           379
           Q           190
           D          1389

  ES         

          P          3046
          U3         331
          A          379
          Q          1390
          DD         10389

  NL         

          P          3465
          U          3313
          AA         379
          2Q         190
          D          189

谢谢


这个脚本应该可以帮助你:

#Create workbook object
wb = openpyxl.Workbook()
sheet = wb.get_active_sheet()
sheet.title='Products by country'

#Generate data

#Add titles in the first row of each column
sheet.cell(row=1, column=1).value='country'
sheet.cell(row=1, column=2).value='product'
sheet.cell(row=1, column=3).value='value'


#Loop to set the value of each cell
for i in range(0, len(Country)):
sheet.cell(row=i+2, column=1).value=Country[i]#with country being your array full of country names. If you have 5 values for one country I would advise just having the country name in there five times.
sheet.cell(row=i+2, column=2).value=Product[i]#array with products
sheet.cell(row=i+2, column=3).value=Values[i]#array with values

#Finally, save the file and give it a name
wb.save('NameFile.xlsx')
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将“for”循环的输出写入 PYTHON 中的 excel 的相关文章

随机推荐

  • 增加溢出宽度以调整滚动条

    当滚动条可见时 我应该使用什么 CSS 来使 div 调整其宽度 这是场景 我有一个 div 和子元素 div ul li li li li li li ul ul li li li li li li ul div 我想在溢出时自动调整滚动
  • 带注释的代码风格[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我无法在两者之间做出决定 MyAnnotation param1 paramval public void foo and MyAnnotati
  • 将 CSS 属性排序为任意顺序?

    我想以编程方式将样式表中的所有声明 属性 不是声明块本身 而是每个块内的各个声明 排序为任意顺序 我已经能够在网上找到几种按字母顺序排序声明的方法 或者按字母顺序反向排序 甚至按字符串长度排序 但这对我来说没有帮助 因为这些排序方法本质上是
  • WPF - 为什么 ContextMenu 项目适用于 ListBox 而不是 ItemsControl?

    列表中的项目有上下文菜单 上下文菜单项绑定到路由命令 如果列表控件是一个 则上下文菜单项可以正常工作ListBox 但一旦我将其降级为ItemsControl它不再起作用了 具体来说 菜单项始终呈灰色 这CanExecute回调在我的Com
  • N Boost Interval_set 的组合

    我的服务在 4 个不同的地点出现中断 我将每个位置的中断建模为 Boost ICL Interval set 我想知道何时至少有 N 个地点发生主动中断 因此 以下这个答案 https stackoverflow com a 9430993
  • Typescript 编译错误:类型“Node”上不存在属性“classList”

    Windows 7 x64 使用 typescript 1 5 beta 使用 gulp typescript 2 7 7 进行编译 出现错误 由于语句 类型 Node 上不存在属性 classList document getElemen
  • 如何修复“OSError:[WinError 193] %1 不是有效的 Win32 应用程序”

    我正在努力与熊猫相处 我正在使用 Thonny 作为 IDLE 来学习 Python 我在 cmd 中使用 pip 命令安装了 pandas 不知何故 我无法在 IDLE 中导入 pandas 方法 因此我通过设置将其添加为包 问题是 当我
  • 自动在所有方法上设置断点

    有没有一种方法可以自动在 eclipse idea 中对给定类中的所有方法设置断点 在大纲视图 Eclipse 中 您可以选择所有方法 右键单击并选择 切换方法断点
  • C 中结构体和指针的 malloc

    假设我想定义一个表示向量长度及其值的结构 如下所示 struct Vector double x int n 现在 假设我想定义一个向量 y 并为其分配内存 struct Vector y struct Vector malloc size
  • 使用 lapply 对数据框列表应用函数并将输出保存到具有不同名称的文件

    我有一个数据框列表 并为列表中的每个元素 例如每个数据框 指定了名称 e g df1 lt data frame x c 1 5 y c 11 15 df2 lt data frame x c 1 5 y c 11 15 mylist lt
  • 如何编写给定代码的列表理解?

    我对 python 相当陌生 l for i in range x 1 for j in range y 1 for k in range z 1 if i k j n l append i j k 我尝试过 l i for i in ra
  • 我可以在 Django 中为每个用户创建子域吗

    我希望用户创建自己的帐户 并且用户应该拥有自己的帐户 例如 user foo com 并不同指向不同的模板文件夹 在 Django 中可以吗 我对 Django 很陌生 安德烈提供的答案并不完全正确 您确实需要一个通配符域名 大多数体面的提
  • PHP/MySQLi 中的多个 SQL 对象

    一段时间以来 我一直在 php 中使用多个 SQL 连接来避免 您现在无法运行此命令 命令不同步 错误 我似乎无法弄清楚何时只能使用一个连接以及何时需要多个连接 以下代码是我如何从彼此相关的不同表中检索内容的方法 The sqls 是连接到
  • Laravel、Faker - 增加生成的日期时间

    我在 Seeder 中使用 Faker 包来生成训练活动的假数据 每个活动都有starts at and ends at字段 我想填充ends at场与DateTime那是在生成的之后starts at 最好相差 1 到 8 小时 或者甚至
  • 从 Expo 应用程序调用本地托管服务器

    我正在创建一个反应本机应用程序 我创建的组件之一包含一个属性 该属性通过来自 http 请求的数据填充 现在 我通过笔记本电脑托管服务器 但我正在使用 Expo 应用程序在手机上测试该应用程序 由于这是两个独立的设备 http 本地主机 3
  • Unicode 和非 Unicode 之间的 SSIS 数据转换错误

    当我运行 ssis 包时 我收到此错误 无法在 unicode 和非 unicode 字符串数据类型之间转换 我的源是 Oracle 当我检查输出列数据类型时 它们都是 Unicode 字符串 DT WSTR 我的目标是 SQL输入列的数据
  • 为 iOS 项目编译 libtiff 以包含 64 位架构

    我有一个 iOS 应用程序更新到最新的 SDK8 3 并且我正在使用最新版本的 Xcode 我的应用程序使用 libtiff 将图像 PNG 格式 转换为 TIFF 格式 我遇到的问题是我需要向 App Store 提交新的修订版 并且需要
  • 在同一光标中访问订购的图像和视频

    我正在使用android content CursorLoader类创建两个Cursor对象访问存储在我的应用程序设备的用户上的媒体 我想为用户提供存储图像和视频的网格视图 以保留 Android Gallery 应用程序的顺序 目前我正在
  • 使用执行 SQL 任务的参数映射

    我正在尝试创建一个临时表并将数据插入到 foreach 循环容器内的执行 SQL 任务内的临时表中 这是sql任务 IF OBJECT ID TEMPDB DBO TEMP IS NOT NULL DROP TABLE TEMP GO CR
  • 将“for”循环的输出写入 PYTHON 中的 excel

    我有以下代码 my list US IT ES NL for i in my list A sum products by country world level i df pd DataFrame value A Descending d