【问题标题】:Are there any easy ways to extract data in Balance Sheet/Income Statement?是否有任何简单的方法可以提取资产负债表/损益表中的数据?
【发布时间】:2015-03-22 17:12:01
【问题描述】:

我尝试从公司的资产负债表/损益表中提取定性数据。它们是 excel(.xls) 文件。

不幸的是,内容结构因公司而异。

例如,

提取收入价值:

在 A 公司,它位于“收入”列的旁边。

在 B 公司,它位于“商品和销售收入”列的旁边,并以千美元/单位列出。

在C公司,情况更糟。您需要查找包含“商品销售收入和”字样的行,然后向下移动包含“提供服务”字样的下一行,将该列旁边的值添加到包含“废品”字样的行中的数据销售”、“汇率收益”和“设备处置收益”。

有 500 多家可用的公司,以及 20 多年的过去数据要提取(内容也可以每年变化),这会成为问题。我不知道如何处理每种情况。数据是如此非结构化。

那么,我想问的是,是否有任何库/API(最好是 JAVA)可以提取这种模糊信息?如果有人已经这样做了,我不想重新发明轮子。是否有任何现成的机器学习 API 可用于此类事情?此外,这些公司并未在美国或其他知名证券交易所上市,因此没有可用的数据提供者。

感谢您的回复。

【问题讨论】:

    标签: java excel machine-learning etl stockquotes


    【解决方案1】:

    坏消息:我很确定没有这样的库/API,因为你想要的东西太复杂了,而且(至少现在)不能自动完成,尤其是在某些情况下像 C:有太多特定领域的语义很难编码。

    好消息:我认为 80/20 规则对于您的情况仍然适用 - 大多数表具有清晰的结构,如 A 或 B,您可以编写简单的脚本来为它们提取值,而其他表必须手动完成。我建议逐步开发此类脚本:从案例 A 开始,然后为所有表启动程序。对于失败的表,选择最简单的情况并为它们调整代码;等等。我相信这种方式是最快的,虽然不是那么令人兴奋。

    this paper 中描述了从表格中半自动提取所需信息的更有趣的方法(对不起,自引用)。不幸的是,没有可用的库或 API,但我猜这个想法相当简单并且可以轻松编码。

    【讨论】:

      【解决方案2】:

      公司通常以称为XBRL 的基于 XML 的计算机可读格式提供此信息。这种格式允许您以编程方式提取您正在谈论的语义信息。与 XML 相关,规范自然是相当密集的,但信息就在那里。

      作为一个随机示例,埃克森美孚在其investors site 上免费发布他们的数据。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-11-13
        • 2015-09-25
        • 1970-01-01
        相关资源
        最近更新 更多