2017-04-24 38 views
0

我微软的计算股息收益率的方式如下:获得来自viewFinancials只有数字输出,无需额外的文本

# load financial data for MSFT 
library(quantmod) 
getFinancials('MSFT') 

# calculate dividend yield for MSFT 
as.numeric(first(-viewFinancials(MSFT.f, type='CF', period='A',subset = NULL)['Total Cash Dividends Paid',]/viewFinancials(MSFT.f, type='BS', period='A',subset = NULL)['Total Common Shares Outstanding',])) 

这里是输出

Annual Cash Flow Statement for MSFT 
Annual Balance Sheet for MSFT 
[1] 1.40958 

怎么可能只具有数字输出1.40958没有附加文字Annual Cash Flow Statement for MSFTAnnual Balance Sheet for MSFT?有没有办法抑制这些?

回答

1

两个字符串“MSFT年度现金流量表”和“MSFT年度资产负债表”均为来自的消息。他们不以任何方式关注结果。

R> dy <- as.numeric(first(-viewFinancials(MSFT.f, type='CF', period='A',subset = NULL)['Total Cash Dividends Paid',]/viewFinancials(MSFT.f, type='BS', period='A',subset = NULL)['Total Common Shares Outstanding',])) 
Annual Cash Flow Statement for MSFT 
Annual Balance Sheet for MSFT 
R> dy 
[1] 1.40958 

如果要压制信息,请使用suppressMessages()

R> suppressMessages(dy <- as.numeric(first(-viewFinancials(MSFT.f, type='CF', period='A',subset = NULL)['Total Cash Dividends Paid',]/viewFinancials(MSFT.f, type='BS', period='A',subset = NULL)['Total Common Shares Outstanding',]))) 
R> dy 
[1] 1.40958 
R> 
+0

是的,但它是我一次编写并在多个股票名称上使用的函数的一部分,它不断发布这些令人讨厌的消息字符串。有没有办法让它沉默? – Oposum

+0

使用'?suppressMessages' –

+0

就是这样,谢谢! – Oposum