在Azure ML Studio中将pandas更新到版本0.19

时间:2017-09-14 15:07:22

标签: python pandas azure anaconda azure-machine-learning-studio

我真的想要访问pandas 0.19中的一些更新函数,但Azure ML studio使用pandas 0.18作为Anaconda 4.0软件包的一部分。有没有办法更新"执行Python脚本"中使用的版本?组件?

2 个答案:

答案 0 :(得分:6)

我提供以下步骤,以便您展示如何更新Execute Python Script中的pandas库版本。

第1步 :使用virtualenv组件在系统中创建独立的python运行时环境。请先使用命令pip install virtualenv安装它如果你没有它。

如果您成功安装它,您可以在python / Scripts文件中看到它。

enter image description here

<强> 步骤2 :运行commad创建独立Python运行时环境

enter image description here

第3步 :然后进入创建目录的Scripts文件夹并激活它(这一步很重要,不要错过)< / p>

请不要关闭此命令窗口并使用pip install pandas==0.19在此命令窗口中下载外部库。

enter image description here

第4步 :将Lib / site-packages文件夹中的所有文件压缩成zip包(我称之为pandas - package here)

enter image description here

第5步 :将zip包上传到Azure机器学习工作空间数据集。

enter image description here

具体步骤请参阅Technical Notes

成功后,您将在DataSet列表中看到上传的包

enter image description here

第6步 :在执行Python脚本模块中定义方法azureml_main之前,您需要删除旧的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):

然后您可以看到日志中的结果,如下所示,首先打印旧版本0.14.0,然后从上传的zip文件中打印新版本0.19.0

[Information]         0.14.0
[Information]         0.19.0

你也可以参考这些主题:Access blob file using time stamp in Azurereload with reset

希望它对你有所帮助。

答案 1 :(得分:0)

使用Docker设置环境时,Azure机器学习工作台可以提供更大的灵活性。我开始使用该工具了。