Coder Social home page Coder Social logo

Comments (1)

DanielBok avatar DanielBok commented on August 20, 2024

Hello,

I believe the issue is due to the data casting as pseudo-observations. For now, it will be best if you cast your data into pseudo-obervations both as the input marginal and also for deriving the CDF.

In a later version, I will rewrite it such that the constructor can take in the input marginals without first casting (i.e. does not need to be between 0 and 1). However, the CDF input will still need to be specified as the unit marginals (i.e. between 0 and 1)

For now, the following code snippet should aid in your work

import pandas as pd

from copulae import EmpiricalCopula
from copulae.core import pseudo_obs

df1 = pd.DataFrame({
    "x": [0.8720320, 0.9472037, 0.3241581, 0.9226000, 0.9763799],
    "y": [0.4154456, 0, 0, 0, 0],
})

cop1 = EmpiricalCopula(2, df1)
print(cop1.cdf(cop1.pobs(df1)))

df2 = pd.DataFrame({
    "x": [0.8993826, 0.8591301, 0.2108277, 0.0000000, 0.2508839],
    "y": [0.9433767, 0.7802619, 0.5243279, 0.9659404, 0.5459261]
})

cop2 = EmpiricalCopula(2, pseudo_obs(df2))
print(cop2.cdf(pseudo_obs(df2)))

As for the corresponding r code,

library(copula)

df1 <- data.frame(x = c(0.8720320, 0.9472037, 0.3241581, 0.9226000, 0.9763799),
                  y = c(0.4154456, 0, 0, 0, 0))

# the default copula empCopula uses ties.method 'max'  but the pobs uses 'average'
# the copulae package uses 'average' by default
cop1 <- empCopula(df1, ties.method = 'average')
pCopula(pobs(df1, ties.method = 'average'), cop1)

from copulae.

Related Issues (20)

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.