Giter VIP home page Giter VIP logo

finstr's Issues

Error in if (substr(file.name, 1, 5) != "http:") {: argument is of length zero Traceback:

im running the following code:
library(XBRL) xbrl_url2014 <- "https://www.sec.gov/Archives/edgar/data/1400000/000121152415000130/abki-20150531_cal.xml" old_o <- options(stringsAsFactors = FALSE) xbrl_data_aapl2014 <- xbrlDoAll(xbrl_url2014) options(old_o)

and keep getting the following error:

Error in if (substr(file.name, 1, 5) != "http:") {: argument is of length zero
Traceback:

  1. xbrlDoAll(xbrl_url2014)
  2. xbrl$processSchema(xbrl$getSchemaName())
  3. which(discovered.files == file)
  4. xbrl$getSchemaName()
  5. fixFileName(dname.inst, .Call("xbrlGetSchemaName", doc.inst,
    . PACKAGE = "XBRL"))

Error re: Non-numeric variable in data frame: date

Thanks for your work on this very interesting package. I'm getting following error (traceback copied below) using R 3.4.2 (on a Windows 64-bit machine). There's something about the date not being numeric (which it clearly isn't -- it's a string ordinarily; I've modified it to be a date in the below example) ... but I don't know why that matters to the data frame.

Any thoughts?

Mark

> pnl %>% calculate(calculations = profit_margins, digits = 2)
 Hide Traceback
 
 Rerun with Debug
 Error in Math.data.frame(list(Net_Margin = c(0.0947474225936983, 0.100807355791349,  : 
  non-numeric variable in data frame: date 
11.
stop("non-numeric variable in data frame: ", vnames[!mode.ok]) 
10.
Math.data.frame(structure(list(Net_Margin = c(0.0947474225936983, 
0.100807355791349, 0.107839975743066, 0.116888930060399, 0.120758688137547
), date = structure(c(15705, 16070, 16435, 16800, 17166), class = "Date")), .Names = c("Net_Margin", 
"date"), class = "data.frame", row.names = c(NA, -5L)), 2) 
9.
calculate(., calculations = profit_margins, digits = 2) 
8.
function_list[[k]](value) 
7.
withVisible(function_list[[k]](value)) 
6.
freduce(value, `_function_list`) 
5.
`_fseq`(`_lhs`) 
4.
eval(quote(`_fseq`(`_lhs`)), env, env) 
3.
eval(quote(`_fseq`(`_lhs`)), env, env) 
2.
withVisible(eval(quote(`_fseq`(`_lhs`)), env, env)) 
1.
pnl %>% calculate(calculations = profit_margins, digits = 2) 

xbrl_get statestments() is using deprecated mutate_ function

Getting an error with using xbrl_get statements(). Seems to be using deprecated mutate_() function

Warning messages:
1: mutate_() was deprecated in dplyr 0.7.0.
ℹ Please use mutate() instead.
ℹ See vignette('programming') for more help
ℹ The deprecated feature was likely used in the finstr package.
Please report the issue to the authors.
This warning is displayed once every 8 hours.
Call lifecycle::last_lifecycle_warnings() to see where this warning was generated.
2: spread_() was deprecated in tidyr 1.2.0.
ℹ Please use spread() instead.
ℹ The deprecated feature was likely used in the finstr package.
Please report the issue to the authors.
This warning is displayed once every 8 hours.
Call lifecycle::last_lifecycle_warnings() to see where this warning was generated.

Installing finstr

I do not manage to install the package. I get the following reject:

_* installing source package 'finstr' ...
Warning in file(file, if (append) "a" else "w") :
cannot open file 'C:/Users/qtf/Documents/R/win-library/3.3/finstr/DESCRIPTION': No such file or directory
Error in file(file, if (append) "a" else "w") :
cannot open the connection
ERROR: installing package DESCRIPTION failed for package 'finstr'
* removing 'C:/Users/ספז/Documents/R/win-library/3.3/finstr'
Error: Command failed (1)

Is there a way to solve the problem? Might this be due to changes in the R version?
Thank you

Correct the Spread command in xbrl_get_data( )

Hi! There may have been a change to the SEC reporting of the XBRL. I spent some time correcting the code so it works.

In the XBRL_get_data() (called by XBRL_get_statements function) you have a set of contextId and elementId filters. Brilliant work in getting this to adapt the correct filters from the underlying taxonomy -- this is truly a work of art in how you managed it but! Spread is prone to error because it fails if there are duplicate elements with different row ids (which there are if there is a new row in the financial statements). This is a catastrophic error -- I say catastrophic because the program virtually fails at random over various years.

Please remove the dyplr::spread__(elementId, fact ) command and replace it with the following:

reshape2::dcast(formula = contextId + 
                  startDate + endDate + decimals ~ elementId, value.var = "fact", 
                fun.aggregate = mean)

While I have chosen fun.aggregate = mean, this does not actually affect anything and I have validated that it does the correct pull. Sum also seems to work -- but I figured if there was some sort of aberrant issue it would be better to average than sum.

The reshape2 will l do a specific long-to-wide conversion where Spread fails. We can see in various R templates that reshape2 is the obsidian blade to Spread's steel surgeon's knife with respect to directness. I've tested it and it seems to be a general correction to the problems of the package. You can simply paste it where the spread_ command is and it should work fine.

I am also forking this project because I am getting tired of doing trace('xbrl_get_data', edit=TRUE) every time I load, R. Hope you don't mind! But I hope you will consider the adjustment so I can download directly from your repository in the future!

All the best, JTFJ

How to get all the elements contained in the original XBRL?

Is there any way we can get more detailed items that are there in the financial statements but not output from your functions? For example, I want to extract information on warranty accruals and warranty claims, which are output in the XBRL list. However, there is no way I can get them from your functions because they cover only high level financial statements.

Warning message: In xbrl_get_data(elements, xbrl_vars) : Rows with duplicated endDate

Can you explain the following error? I'm unable to

xbrl.vars <- xbrlDoAll(inst,prefix.out="test")
xbrl_urltest <- "http://www.sec.gov/Archives/edgar/data/73290/000151316216000678/bmra-20151130.xml"

old_o <- options(stringsAsFactors = FALSE)

xbrl_test <- xbrlDoAll(xbrl_urltest)

sttest <- xbrl_get_statements(xbrl_test)
Warning message:
In xbrl_get_data(elements, xbrl_vars) : Rows with duplicated endDate

Financial statements repository
From To Rows Columns
ConsolidatedIncomeStatement 2015-11-30 2015-11-30 2 19
ConsolidatedBalanceSheet 2015-05-31 2015-11-30 2 26
ConsolidatedCashFlow 0 26

Warning messages:
1: In min(x$endDate) : no non-missing arguments, returning NA
2: In max(x$endDate) : no non-missing arguments, returning NA

Why does consolidated cash flow have 0 rows?

error: cannot join on columns 'elementId' x 'elementId':

Ran following:
library(finstr)
inst<- "http://edgar.sec.gov/Archives/edgar/data/320193/000119312514383437/aapl-20140927.xml"

xbrl.vars<- xbrlDoAll(inst, verbose=TRUE)

st2013<-xbrl_get_statements(xbrl.vars)

Recevied following error

Error: cannot join on columns 'elementId' x 'elementId': Can't join on 'elementId' x 'elementId' because of incompatible types (factor / integer)
In addition: Warning message:
In semi_join_impl(x, y, by$x, by$y) :
joining factors with different levels, coercing to character vector

merge.statement does not working

Hi,

I'm following the Readme GitHub file to reproduce the example listed, but when I try to use the merge.statement function, it does not work. Anyone face this problem?

Best

merge.statement(st_all$StatementOfFinancialPositionClassified, st_all$StatementOfIncome)
Error in merge.statement(st_all$StatementOfFinancialPositionClassified, :
could not find function "merge.statement"`

Unable to create statements from XBRL documents

Many thanks for publishing the finstr package!

While I was able to get this package working for XBRL documents filed with SEC, I am running into a strange error when working with XBRL documents filed with Ministry of Corporate Affairs (MCA) (India). Specifically, the xbrl_get_statments() function call fails.


# Get annual report XBRL and extract statements
options(stringsAsFactors = FALSE)
org2015Inst <- INST #the XML file from MCA website
org2015 <- xbrlDoAll(org2015Inst,cache.dir = "XBRLCache", prefix.out="out", verbose = TRUE)
org2015Stmts <- xbrl_get_statements(org2015)

And, this is the error I get.

> org2015Stmts <- xbrl_get_statements(org2015)
Error: incorrect length (0), expecting: 965

Doesn't work on xml files after 2016

I have tried to run it on Tesla files between 2015-2020 and after 2016 it couldn't open up the instance xml files. Do you have any idea why is that? Was any change after 2016 in the XBRL filings?

Error in download file

Hi, I'm having issue extracting values from Starbuck's latest 10-k.

library(XBRL)
xbrl_sbux <- "https://www.sec.gov/Archives/edgar/data/829224/000082922418000052/sbux-20180930.xml"
old_o <- options(stringsAsFactors = FALSE)
xbrl_data <- xbrlDoAll(xbrl_sbux)
options(old_o)

Trace:

Error in fileFromCache(file) : 
  Error in download.file(file, cached.file, quiet = !verbose) : 
  cannot open URL 'https://www.sec.gov/Archives/edgar/data/829224/000082922418000052/https://xbrl.sec.gov/dei/2018/dei-2018-01-31.xsd'

In addition: Warning message:
In download.file(file, cached.file, quiet = !verbose) :
  cannot open URL 'https://www.sec.gov/Archives/edgar/data/829224/000082922418000052/https://xbrl.sec.gov/dei/2018/dei-2018-01-31.xsd': HTTP status was '403 Forbidden'

It seems like two links are being incorrectly appended but not sure why, any help would be great, thanks!

Outstanding shares from 10k or 10q

Great package! Is there a way to pull outstanding shares from the qs and ks? Its usually listed on the first page of the report so I'm sure it's there, just haven't figured out how to access it.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.