use*_*237 3 python azure pandas anaconda azure-machine-learning-studio
我真的想要访问pandas 0.19中的一些更新函数,但Azure ML studio使用pandas 0.18作为Anaconda 4.0软件包的一部分.有没有办法更新"执行Python脚本"组件中使用的版本?
我提供以下步骤,以显示如何更新pandas库的版本Execute Python Script.
步骤1:使用该virtualenv组件在您的系统中创建一个独立的python运行时环境.pip install virtualenv如果您没有它,请先使用命令安装它.
如果您成功安装它,您可以在python/Scripts文件中看到它.
第2步:运行commad以创建独立的python运行时环境.
第3步:然后进入创建目录的Scripts文件夹并激活它(这一步很重要,不要错过)
请不要关闭此命令窗口,并使用此命令窗口pip install pandas==0.19下载外部库.
第4步:将Lib/site-packages文件夹中的所有文件压缩成zip包(我称之为pandas - package here)
步骤5:将zip包上载到Azure Machine Learning WorkSpace DataSet中.
具体步骤请参考技术说明.
成功后,您将在DataSet列表中看到上传的包
步骤6:在azureml_main执行Python脚本模块中定义方法之前,您需要删除旧pandas模块及其依赖项,然后pandas再次导入,如下面的代码所示.
import sys
import pandas as pd
print(pd.__version__)
del sys.modules['pandas']
del sys.modules['numpy']
del sys.modules['pytz']
del sys.modules['six']
del sys.modules['dateutil']
sys.path.insert(0, '.\\Script Bundle')
for td in [m for m in sys.modules if m.startswith('pandas.') or m.startswith('numpy.') or m.startswith('pytz.') or m.startswith('dateutil.') or m.startswith('six.')]:
del sys.modules[td]
import pandas as pd
print(pd.__version__)
# The entry point function can contain up to two input arguments:
# Param<dataframe1>: a pandas.DataFrame
# Param<dataframe2>: a pandas.DataFrame
def azureml_main(dataframe1 = None, dataframe2 = None):
Run Code Online (Sandbox Code Playgroud)
然后您可以看到日志中的结果,如下所示,首先打印旧版本0.14.0,然后0.19.0从上传的zip文件中打印新版本.
[Information] 0.14.0
[Information] 0.19.0
Run Code Online (Sandbox Code Playgroud)
您还可以参考这些线程:使用Azure中的时间戳访问blob文件,并使用重置重新加载.
希望它能帮到你.
| 归档时间: |
|
| 查看次数: |
1032 次 |
| 最近记录: |