我想问一下是否有人可以帮我解决这个问题。我正在尝试构建一个分析脚本来计算公司的所有比率。我正在使用R studio。 我在选择某些行时遇到问题。例如,如果我想计算EBITDA / Sales或Revenue,我需要从该数据集中添加一定数量的行并将其除以第一行。 我能够为那些只涉及单行的那些做到这一点。
我该怎么做?我的代码已附上。
#Ratio Analytics Investment Banking Program
#implement libraries
library(quantmod)
library(stockPortfolio)
library(tseries)
library(FinCal)
#downloading data
getSymbols('BHP')
getFin('BHP') #env.class
#plot the data
plot(BHP$BHP.Adjusted)
income<-viewFin(BHP.f, "IS","A") #annual income statement
balancesheet<-viewFin(BHP.f,"BS","A")
income[is.na(income)]<-0
balancesheet[is.na(balancesheet)]<-0
View(balancesheet) #balancesheet
View(income) #incomestatement
#calcualting the ratios for the company underconsideration
#finding gross profit margin
income1<-data.frame(income)
gpm<-income1[5,1]/income1[1,1] #gross profit margin
#compute EBITDA
ebitda<-income1[(16,17,18),1]/income1[1,1]
错误:'ebitda&lt; -income1中的意外','[(16,“
但是,每当我运行脚本时,它都会给我一个错误。 这里的任何帮助将不胜感激。 谢谢大家 此致
答案 0 :(得分:0)
更改
income1[(16,17,18),1]/income1[1,1]
到
income1[c(16,17,18,1)]/income1[c(1,1)]
如果收入是一个向量,那么你需要全部改变它们
gpm<-income1[5,1]/income1[1,1]
# to
gpm<-income1[c(5,1)]/income1[c(1,1)]