brash-air-25337
12/19/2023, 10:23 PMcmdstanr.install_cmdstan()
line:
from metaflow import FlowSpec, step, pypi#, environment
import os
class MinimumFlow(FlowSpec):
@step
def start(self):
self.next(self.install)
# @environment(vars={'GITHUB_PAT': os.getenv('GITHUB_PAT')})
@pypi(python='3.9.18', packages = {'numpy': '1.26.2', 'pandas': '1.5.3',
'rpy2': '3.5.14', 'cmdstanpy': '1.2.0',
'rpy2-arrow': '0.0.8'})
@step
def install(self):
print("Installing packages")
from rpy2.robjects.packages import importr
os.environ['R_REMOTES_STANDALONE'] = "true"
utils = importr('utils')
utils.chooseCRANmirror(ind=1)
print("Installing remotes")
utils.install_packages('remotes')
remotes = importr('remotes')
print("Installing cmdstanr")
remotes.install_github('stan-dev/cmdstanr', force = True)
cmdstanr = importr('cmdstanr')
print("Checking cmdstan requirements")
cmdstanr.check_cmdstan_toolchain()
print("Installing cmdstan")
cmdstanr.install_cmdstan()
print("Packages installed")
self.next(self.end)
@step
def end(self):
print("Flow is done!")
if __name__ == "__main__":
MinimumFlow()