Pyspark - 使用 python 或 pyspark 转换 excel 文件的行和列
Posted
技术标签:
【中文标题】Pyspark - 使用 python 或 pyspark 转换 excel 文件的行和列【英文标题】:Pyspark- transform rows and columns of excel file using python or pyspark 【发布时间】:2021-09-14 10:18:09 【问题描述】:我有文件(xlsx),其中包含代理名称及其数据等数据,然后是代理名称及其数据。
例子:
如何添加一个列,该列将包含所有具有其数据的列中的代理名称?我想创建一个数据框并计算 kpis。
预期输出:
【问题讨论】:
发布您的预期输出和您尝试过的代码 您介意分享数据框示例还是.xlsx
?
我可以获取您的邮件 ID 或其他任何信息,以便我可以分享。因为在这里分享不安全。
上传到文件共享网站并在此处发布链接
请在此处找到文件:wetransfer.com/downloads/…
【参考方案1】:
我们可以将以下格式的列名称添加到相应的单元格中。
import openpyxl
from copy import copy
path = "C:/Users/Python/TestData.xlsx"
wb = openpyxl.load_workbook(path)
sheet_obj = wb.active
Name = sheet_obj.cell(row = 1, column = 1)
#NameFont = sheet_obj.cell(row = 2, column = 1)
sheet_obj.cell(row = 2, column = 8).value = "Name"
sheet_obj.cell(row = 2, column = 8)._style = copy(sheet_obj.cell(row = 2, column = 1)._style)
sheet_obj['H3'] = Name.value
sheet_obj.cell(row = 3, column = 8)._style = copy(sheet_obj.cell(row = 3, column = 1)._style)
sheet_obj['H4'] = Name.value
sheet_obj.cell(row = 4, column = 8)._style = copy(sheet_obj.cell(row = 4, column = 1)._style)
sheet_obj['H5'] = Name.value
sheet_obj.cell(row = 5, column = 8)._style = copy(sheet_obj.cell(row = 5, column = 1)._style)
sheet_obj['H6'] = Name.value
sheet_obj.cell(row = 6, column = 8)._style = copy(sheet_obj.cell(row = 6, column = 1)._style)
sheet_obj['H7'] = Name.value
sheet_obj.cell(row = 7, column = 8)._style = copy(sheet_obj.cell(row = 7, column = 1)._style)
sheet_obj['H8'] = Name.value
sheet_obj.cell(row = 8, column = 8)._style = copy(sheet_obj.cell(row = 8, column = 1)._style)
wb.save(path)
下面是输出:
如果我们想将它应用于整个 excel 工作表,请保持循环,这可以根据名称完成。
【讨论】:
以上是关于Pyspark - 使用 python 或 pyspark 转换 excel 文件的行和列的主要内容,如果未能解决你的问题,请参考以下文章
Pyspark - 使用 python 或 pyspark 转换 excel 文件的行和列
pyspark.sql 无法实例化 HiveMetaStoreClient - noclassfound from org.apache.commons.dbcp.connectionfactory
将 hive 表卸载到。使用 Spark 或 pyspark 或 python 的 dat 文件