【问题标题】:How can I export a list of association rules to txt or Excel in Python?如何在 Python 中将关联规则列表导出到 txt 或 Excel?
【发布时间】:2020-01-03 18:23:10
【问题描述】:
association_results = filter(lambda rule: len(rule.lhs) == 1, rules)
for rule in sorted(association_results, key=lambda rule: rule.lift):
  print(rule)

此代码将在列表中打印所有这样的关联规则(由于安全原因无法显示数据):

{Product 1} -> {Product 2}(conf:0.526,supp:0.001,lift:264.188,conv:2.107)

但是,我需要将这个带有规则的列表导出到 txt 文件,或者最好导出到 Excel。但是当我使用这段代码将它导出到excel时,它给了我一个错误。

[In] : association_results.to_excel('results.xlsx', engine='xlsxwriter')
[Out]: AttributeError: 'filter' object has no attribute 'to_excel

谁能告诉我如何正确地将我的输出导出到 txt 或 Excel 中?

【问题讨论】:

  • 你的预期输出是什么
  • @Datanovice 与我的笔记本中显示的输出相同。每行关联规则。

标签: python pandas export market-basket-analysis


【解决方案1】:

您好,您可以使用以下代码:

OutputPath = r'C:/Users/..../.spyder-py3/OutPuts'

WriteExcelPackagePath = r'C:/Users/.../.spyder-py3/PyExcelerate-0.9.0'
os.chdir(WriteExcelPackagePath)
from pyexcelerate import Workbook
Wb = Workbook()
Wb.new_sheet("MyResultData", data=MyResultData.values )
Wb.save(OutputPath +"/MyResultData.xlsx")

你应该把这个包(PyExcelerate-0.9.0)复制到路径中

【讨论】:

  • 嗨!欢迎来到堆栈溢出!我相信你的代码并不能解决作者的问题。请注意,他使用 filter 对象,而不是数据框(因此 .values 不起作用)。您应该使代码适应相关用例(最好解释作者代码中的错误)。但是,我相信有一个更简单的答案,不需要额外的依赖。
猜你喜欢
  • 2016-11-14
  • 1970-01-01
  • 2018-10-15
  • 1970-01-01
  • 2022-07-28
  • 1970-01-01
  • 2012-07-30
  • 1970-01-01
相关资源
最近更新 更多