0

假设我想回归总收入的 R 毛利润。我需要这方面的数据,而且越多越好。CRAN 上有一个我觉得非常有用的库: quantmod ,它可以满足我的需要。

library(quantmod)
getFinancials(Symbol="AMD", src="google")
#to get the names of the matrix: rownames(AMD.f$IS$A)
Total.Revenue<-AMD.f$IS$A["Revenue",]
Gross.Profit<-AMD.f$IS$A["Gross Profit",]

#finally:
reg1<-lm(Gross.Profit~Total.Revenue)

我遇到的最大问题是,这个库只为我提供了 4 年的数据(4 次观察,谁运行回归只有 4 次观察???)。是否有任何其他方式(可能是其他图书馆)可以获得超过 4 年的数据?

4

1 回答 1

7

我同意这不是一个 R 编程问题,但无论如何我都会在这个问题(可能)结束之前发表一些评论。

归结为:即使您有钱可以花,也很难获得跨行业和市场的可靠基本面数据。如果你在看美国,那么有很多选择,但所有主要的(读作“相对可靠的”)提供商每月都需要数千美元——FactSet、Bloomberg、Datastream 等等。对于它的价值,对于处理基本数据,我更喜欢并使用 FactSet。

一般来说,因为每个提供商提供的 Excel 工具都比较成熟,我发现用数据填充电子表格然后将数据读入 R 更容易。再说一次,我通常最多处理几十家公司的基本面,因为一旦您离开“已知”公司的领域,检查异常所需的时间就会成倍增加。

有许多潜在的“陷阱”。最明显的是,定义因部门而异。例如,工业公司的“销售”与银行的“销售”非常不同。另一个问题是定义的变化。几乎每年都会发生一些会计法规或其他变化并破坏您的数据系列。去年这里报告了少数族裔,但今年这个项目被移到了损益表中的另一个位置,依此类推。

另一个问题是公司本身的变化。例如,如何处理合并、收购和分拆?这种事情可以使衡量有机销售增长几乎是不可能的。要记住的另一点是,如果您要处理营业利润或净利润,则必须考虑例外情况以及是否对其进行调整。

与美国以外的公司打交道会增加一大堆进一步的问题。当然,主要的数据提供商试图在全球范围内进行标准化(例如 FactSet Fundamentals)。这只是增加了另一层抽象,通常很难检查数据是如何被操纵的。

简而言之,获取数据很繁重,而且我知道没有可靠的免费资源。除非您正在为非常同质的公司集团处理最简单的项目,否则即使您确实拥有数据,这也是一堆蠕虫。

于 2012-04-16T22:16:23.487 回答