def r_cal(df):
    string = """
    ptsPPP <- function(df) {
        X <- with(df, ppp(x, y, c(-25,25), c(-25,25)))
        plot(X)
        return(X)
    }
    """
    sp = SignatureTranslatedAnonymousPackage(string, "powerpack")
    pandas2ri.activate()
    r_num_meanDis_DF = pandas2ri.py2ri(df[["x", "y"]])
    ptsPPP = sp.ptsPPP(r_num_meanDis_DF)