Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用rpy2进行预测?_Python_R_Rpy2 - Fatal编程技术网

Python 如何使用rpy2进行预测?

Python 如何使用rpy2进行预测?,python,r,rpy2,Python,R,Rpy2,我有一个R代码来预测硬盘何时会满 $ duinfo <- read.table('duinfo.dat', colClasses=c("Date","numeric"), col.names=c("day","usd")) $ attach(duinfo) $ totalspace <- 500000 $ model <- lm(day ~ usd) $ as.Date(predict(model, data.frame(usd = totalspace)), origin="

我有一个R代码来预测硬盘何时会满

$ duinfo <- read.table('duinfo.dat', colClasses=c("Date","numeric"), col.names=c("day","usd"))
$ attach(duinfo)
$ totalspace <- 500000
$ model <- lm(day ~ usd)
$ as.Date(predict(model, data.frame(usd = totalspace)), origin="1970-01-01")

如何使用rpy2将最后一条语句转换为python代码?

我能够将代码转换为python:

import rpy2.robjects as robjects
from rpy2.robjects.packages import importr
utils = importr('utils')
stats = importr('stats')
base = importr("base")

data = robjects.r(
    'read.table(file = "duinfo.dat", colClasses=c("Date","numeric"))')
# data = robjects.r(
#    'read.table(file = "duinfo.dat", colClasses=c("Date","numeric"), col.names=c("days","used"))')
robjects.r.attach(data)
totalspace = 500000
# Get used data
c = robjects.IntVector((2,0))
used = data.rx(True, c)

# Get Days
c = robjects.IntVector((1,0))
days = data.rx(True, c)
robjects.globalenv["used"] = used
robjects.globalenv["days"] = days
#
model = stats.lm('days ~ used')
dataf = robjects.DataFrame({})
d = {'used': totalspace}
dataf = robjects.DataFrame(d)
# Use the predict function to extrapolate the model
end_date = base.as_Date(robjects.r.predict(model, dataf), origin="1970-01-01")
rStr = base.format(end_date, format = "%d/%m/%Y")
print(rStr[0])
import rpy2.robjects as robjects
from rpy2.robjects.packages import importr
utils = importr('utils')
stats = importr('stats')
base = importr("base")

data = robjects.r(
    'read.table(file = "duinfo.dat", colClasses=c("Date","numeric"))')
# data = robjects.r(
#    'read.table(file = "duinfo.dat", colClasses=c("Date","numeric"), col.names=c("days","used"))')
robjects.r.attach(data)
totalspace = 500000
# Get used data
c = robjects.IntVector((2,0))
used = data.rx(True, c)

# Get Days
c = robjects.IntVector((1,0))
days = data.rx(True, c)
robjects.globalenv["used"] = used
robjects.globalenv["days"] = days
#
model = stats.lm('days ~ used')
dataf = robjects.DataFrame({})
d = {'used': totalspace}
dataf = robjects.DataFrame(d)
# Use the predict function to extrapolate the model
end_date = base.as_Date(robjects.r.predict(model, dataf), origin="1970-01-01")
rStr = base.format(end_date, format = "%d/%m/%Y")
print(rStr[0])