目录
回复内容:
首页 后端开发 Python教程 winpython, anaconda 哪个更好?

winpython, anaconda 哪个更好?

Jun 06, 2016 pm 04:22 PM
anaconda python

Python(x,y)和WinPython都是开源项目,其项目负责人都是Pierre Raybaut。按Pierre自己的说法是“WinPython不是试图取替Python(x,y),而是出于不同动机和理念:更灵活、易于维护、可移动、对操作系统侵略性更小,但是用户友好性更差、包更少、没有同Windows资源管理器集成。”。参考1里面说Python(x,y)不是很稳定,此外看它目前的更新不是很频繁,确实有可能Pierre后来的工作重心放在WinPython上了。

Canopy和Anaconda是公司推的,带免费版和商业版/插件。这两款发行版也牵扯到一个人,那就是Travis Oliphant。Travis是SciPy的原始作者,同时也是NumPy的贡献者。Travis在2008年以副总裁身份加入 Enthought,2012年以总裁的身份离开,创立了一个新公司continuum.io,并推出了Python的科学计算平台Anaconda。 Anaconda相对Canopy支持Python的版本更多,对Python新版本支持跟的很紧(Sage不支持Python3.x的理由是因为其依赖的SciPy还不支持Python3,而Anaconda却实现了支持Python3.3和3.4,这就说明问题了),此外其在Linux平台下(通过conda管理)安装更方便。
[原创]选择Python科学计算发行版

两者使用的是相同的界面--spyder。到底有什么区别呢,哪个更好一些?

回复内容:

不请自来。本问题回答于2015年末,未来可能会出现个人不同意当前观点的状况。

种种迹象表明,从13-14年开始在科学计算领域使用Anaconda对于我确实是一个不错的选择。作为一个“科学计算发行版”,而不是一个专用于其他功能的发行版,我会给Anaconda 9分(满分10)

Pros:

1 Anaconda 作为科学计算/数据挖掘的工具效能让人满意。

我认为一些科学计算必要的工具在Anaconda中默认安装:
  • NumPy+SciPy的底层组合
  • Pandas对结构化/非结构化数据的转换以及灵活的处理
  • Statsmodels,Scikit-Learn、NetworkX等对于数据挖掘的支持在Anaconda里面是默认安装的

当然工作中我还会关注一些conda没有收录的可爱功能,这其中包括:
  • 词云绘图工具wordcloud
  • 社交网络挖掘的Louvain算法
  • gradient boosting工具xgboost

更多功能大家自己到github, bitbucket, sourceforge等都可以找到,就不赘述。

2 Anaconda 作为知识传导的工具令人满意。

在其他回答中我看到了有人提到ipython notebook无法正常工作,新手应该注意一下不要在翻墙的同时使用这个功能,它的原理是本地开端口建立一个Server,在浏览器中可以打开ipynb文档,开启Python Kernel,执行代码以及写Markdown风格的文档。我从Ipython 2.x的版本一直用到4.0(已经更名为Jupyter),这个工具可以同时支持Python、Julia和R脚本的Notebook,实现图文码并茂的文档。它的好处就是,HTML可以置于服务器端,而notebook可以直接共享给他人或者放在github上。

当我提到绘图的时候,我的意思是bokeh。基于bokeh.js,你的静态图和动图都可以放在Ipython notebook里面或者使用bokeh-server写在服务器上。Python和JavaScript之间交换数据我没有感觉到丝毫的不适,而bokeh本身对于高等、低等图形元素的设计让人感觉恰到好处。作为一个Processing2和R ggplot2的前用户,上手bokeh花了大概1-2天。

(小广告:出于私心推荐Processing 3,现在支持Python。值得上手一玩)

图文码并茂的文档我私人观点认为,未来是一个大方向:一个200人的公司,下至你手底下的小卒,上至CEO,都会从文档中获取他们需要整合的信息。作为数据分析师,数据科学家这种有些容易被码工鄙视实干不足,又被运营嗤之以鼻不够业务敏感不接地气的岗位,用数据讲出你想讲出的李菊福的故事应该是基本功。

3 Anaconda的工具生态圈让我觉察到了它未来的布局或者说野心。

且不说Win/MacOS/Linux通吃,请看如下链接中的PDF链接 Learn more about Anaconda

Anaconda提出了数据科学生态圈的概念,我认为这是经过凝练浓缩之后的总结出来的一套方法论。
  • 数据整合、探索、统计分析、挖掘、预测(见第一点)
  • 数据的仪表板、故事板乃至BI工具(见第二点)
  • 代码底层加速能力:合理利用CPU(blaze生态系统,Intel MKL)、GPU(CUDA JIT)、Spark
  • 企业工具:本地部署的协作开发平台wakari、本地定制化部署的Hadoop Spark(已有docker)

结合方法论提供解决别人痛点的工具是虚幻的,所以Continuum Analytics自己也做数据、算法的咨询服务。我认为有一大批压根没有远见的、没有真正以数据为核心做数据科学的所谓大数据公司,他们是真正好用技术的怀疑论者,我向来是无视的。

Cons:

1 技术群里面很多小伙伴反馈说conda生态圈更新慢。一般会晚1-2个月,比如IPython 4.0或者说Python 3.5的整合。我希望有的是稳定、简单的版本,对更新的需求可以压抑一下。

2 有些本来可以免费找到的资源在Anaconda中收费,比如NumPy w/ Intel MKL。而且,个人无法负担本地部署的Wakari企业级协作开发产品和Hadoop Spark集群产品。如果你有兴趣可以写邮件quote之。

3 回头看到题主提到的Spyder我跟你说我强迫症又犯了。Spyder作为IDE提供的是类似Matlab或者RStudio的体验,Python作为开发语言,除了Ipython Notebook以外,我建议你从以下2个工具里2选1,这2个可都不是Anaconda自带的工具了。

  • PyCharm,JetBrains的精品,Win/MacOS/Linux全平台。不多解释了。
  • Sublime Text 3,编辑器里我用着挺顺手(代码风格检查、高亮、代码上传、多翻译器切换)

那些说Vim的,你过来咬我啊!

================================================================

作为一个Anaconda的收费产品使用者,我得承认在几乎所有的技术群里面我表现的都像官托。

管它呢!Life is short, no BB. 用过两个软件后,我发现自己偏爱Anaconda啊!

大家都喜欢美观易用的User Interface,这样的话Anaconda是个不错的选择,界面漂亮,更方便管理那些Libraries,而且会对版本更新比较勤快。

其实说实话,我原来都是自己手动安装所有的Libraries的,从来不借助这些第三方软件,感觉这样比较Cool,可是经常会出现那些停留在Python2.x的Libraries,还要自己动手修改代码,才可以用,真是痛心疾首,后来找了很多的第三方,比如题主说的 (x,y)Python,Anaconda,还有Enthought,Winpython。后来综合考虑了,软件的美观程度,版本兼容性,更新频率,管理难易程度,我还是选择了Anaconda这条大水蟒。

一般堆代码也都是在Ipython Notebook里面完成的,很少去Spyder里面编辑,毕竟能少打开一个软件窗口就要节省一个窗口,而且整合在浏览器中的Ipython Notebook对代码每一步的测试很好用,命令行和批处理完美的融合在了一起,而且学会了Markdown语言后,整个就是一个笔记本,无论是图片,视频,数学公式,还是项目列表,表格,各种格式的文本都可以在一个ipnb文件里完成。是科学工作者和程序员的好笔记本,只有更爱它。

可以插入图片
winpython, anaconda 哪个更好?可以插入网页
winpython, anaconda 哪个更好?可以绘制表格
winpython, anaconda 哪个更好?可以嵌入网络链接 winpython, anaconda 哪个更好?

可以直接绘图
winpython, anaconda 哪个更好? winpython, anaconda 哪个更好?可以编辑数学公式 winpython, anaconda 哪个更好?
winpython, anaconda 哪个更好?对 pandas 的良好支持
winpython, anaconda 哪个更好? Anaconda 和 winpython 都用过,Anaconda用得少些,windows下主要用winpython。
python如果不是做开发的话,相比spyder, 用ipython notebook是更好的选择.

有关两者的区别就我了解有如下几点:
1,我曾经让学生装Anaconda作为python课上的使用软件,但是不少同学安装都出现问题,最主要的就是ipython notebook用不了,而后改用winpython,出现问题的情况变少了。这发生在2013年,之后上课就统一用winpython了。
2,winpython脱胎于pythonxy,面向科学计算,兼顾数据分析与挖掘,;而Anaconda主要面向数据分析与挖掘方面,在大数据处理方面有自己特色的一些包, 据说在极大的矩阵运算方面速度很快。
3,winpython强调便携性,被做成绿色软件,不写入注册表,安装其实就是解压到某个文件夹,移动文件夹甚至放到U盘里在其他电脑上也能用。Anaconda则算是传统的软件模式。
4,winpython是由个人维护;Anaconda是由一家数据分析服务公司维护;这个区别意味着winpython在很多方面都从简,而Anaconda会提供一些人性化设置。
5,winpython 只能在windows上用,Anaconda则有linux的版本。

大致就这些,其实两个集成平台最大的区别还是其集成的软件包的区别,在windows下装python的包容易出问题,你需要哪些包,而其中一个有,那就选那个。
抛开软件包的差异,我个人推荐初学者用winpython,我觉得它似乎正因为其简单,问题也少点,由于便携性的特点系统坏了,重装后也能直接用。
最后一个建议,用python时间长了,最终还是会在linux下用的。windows下太缚手缚脚了。 anaconda在win 下各种崩溃,还是用winpython吧。我是win7,用的最新版和11月的次新版。 没用过winpython,只用过anaconda
用了anaconda觉得已经很好用了 JP Morgan和Credit Suisse用Anaconda,朋友告诉我Citi也是用那个。看看哪个你们行业用的广泛就用哪个呗~ Linux --> Anaconda
Windows --> Winpython
Anaconda在windows环境下问题多,notebook用不了。 在 windows 下我推荐 anaconda,或者说其背后的 conda 包管理系统。它提供了和 pip 类似的管理功能并且有所增强(例如支持 env),并且,所有的包都是编译好的,不必像 pip 那样安装 numpy 和 scipy 时折腾许久。如果觉得默认包配置太累赘的话,完全可以下载 conda 最小包 miniconda (Miniconda — Conda)来进行安装 据说anaconda的源在墙外,访问不稳定。
我用anaconda安装R语言支持,一直没成功。

An unexpected error has occurred, please consider sending the:--:-- 0.00 B/s
following traceback to the conda GitHub issue tracker at:

github.com/conda/conda/

Include the output of the command 'conda info' in your report.


Traceback (most recent call last):
File "/opt/conda/lib/python3.5/site-packages/requests/packages/urllib3/response.py", line 226, in _error_catcher
yield
File "/opt/conda/lib/python3.5/site-packages/requests/packages/urllib3/response.py", line 301, in read
data = self._fp.read(amt)
File "/opt/conda/lib/python3.5/http/client.py", line 433, in read
n = self.readinto(b)
File "/opt/conda/lib/python3.5/http/client.py", line 473, in readinto
n = self.fp.readinto(b)
File "/opt/conda/lib/python3.5/socket.py", line 575, in readinto
return self._sock.recv_into(b)
File "/opt/conda/lib/python3.5/ssl.py", line 924, in recv_into
return self.read(nbytes, buffer)
File "/opt/conda/lib/python3.5/ssl.py", line 786, in read
return self._sslobj.read(len, buffer)
File "/opt/conda/lib/python3.5/ssl.py", line 570, in read
v = self._sslobj.read(len, buffer)
ConnectionResetError: [Errno 104] Connection reset by peer

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/opt/conda/bin/conda", line 5, in
sys.exit(main())
File "/opt/conda/lib/python3.5/site-packages/conda/cli/main.py", line 173, in main
args_func(args, p)
File "/opt/conda/lib/python3.5/site-packages/conda/cli/main.py", line 180, in args_func
args.func(args, p)
File "/opt/conda/lib/python3.5/site-packages/conda/cli/main_install.py", line 45, in execute
install.install(args, parser, 'install')
File "/opt/conda/lib/python3.5/site-packages/conda/cli/install.py", line 423, in install
plan.execute_actions(actions, index, verbose=not args.quiet)
File "/opt/conda/lib/python3.5/site-packages/conda/plan.py", line 538, in execute_actions
inst.execute_instructions(plan, index, verbose)
File "/opt/conda/lib/python3.5/site-packages/conda/instructions.py", line 148, in execute_instructions
cmd(state, arg)
File "/opt/conda/lib/python3.5/site-packages/conda/instructions.py", line 52, in FETCH_CMD
fetch(state['index'], arg)
File "/opt/conda/lib/python3.5/site-packages/conda/instructions.py", line 48, in fetch
fetch_pkg(index[fn])
File "/opt/conda/lib/python3.5/site-packages/conda/fetch.py", line 296, in fetch_pkg
download(url, path, session=session, md5=info['md5'], urlstxt=True)
File "/opt/conda/lib/python3.5/site-packages/conda/fetch.py", line 376, in download
chunk = resp.raw.read(2**14)
File "/opt/conda/lib/python3.5/site-packages/requests/packages/urllib3/response.py", line 311, in read
flush_decoder = True
File "/opt/conda/lib/python3.5/contextlib.py", line 77, in __exit__
self.gen.throw(type, value, traceback)
File "/opt/conda/lib/python3.5/site-packages/requests/packages/urllib3/response.py", line 244, in _error_catcher
raise ProtocolError('Connection broken: %r' % e, e)
requests.packages.urllib3.exceptions.ProtocolError: ("Connection broken: ConnectionResetError(104, 'Connection reset by peer')", ConnectionResetError(104, 'Connection reset by peer'))
The command '/bin/sh -c conda install --yes rpy2 r-base r-irkernel r-plyr r-devtools r-dplyr r-ggplot2 r-tidyr r-shiny r-rmarkdown r-forecast r-stringr r-rsqlite r-reshape2 r-nycflights13 r-caret r-rcurl r-randomforest' returned a non-zero code: 1 我来安利一下Canopy。

主界面长这样,
winpython, anaconda 哪个更好?
目前最新的版本是1.7。如果你还是学生,可以用学校邮箱注册账号登录,解锁debug 功能。

重点安利它家的Package Manager 功能,界面长这样,
winpython, anaconda 哪个更好?
可视化的安装界面,妈妈再也不用担心我的package 缺失/版本混乱/安装路径不明啦!

Canopy 为您贴心准备了所有常用的科学计算包,包括大名鼎鼎的numpy,scipy,pandas等等。numpy 的安装情况长这样,
winpython, anaconda 哪个更好?
连pip install 都不用啦!鼠标点点,安装卸载轻轻松松。甚至可以回溯历史版本!是否过于炸裂!

同时Canopy 对于Jupyter Notebook 的支持也很棒,可以在editor 里直接查看、编辑。

个人认为Canopy 最棒的一点是如果在安装时将它设置为default ,之后就不需要担心Python 的编译环境了。Canopy 自动为你创建出一个VirtualEnv,使你专心于具体的实现,不必担心底层的情况。

最后,Pycharm 也是极好的!然而我用sublime text 码代码。。。(一黑黑俩
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

mysql安装后怎么使用 mysql安装后怎么使用 Apr 08, 2025 am 11:48 AM

文章介绍了MySQL数据库的上手操作。首先,需安装MySQL客户端,如MySQLWorkbench或命令行客户端。1.使用mysql-uroot-p命令连接服务器,并使用root账户密码登录;2.使用CREATEDATABASE创建数据库,USE选择数据库;3.使用CREATETABLE创建表,定义字段及数据类型;4.使用INSERTINTO插入数据,SELECT查询数据,UPDATE更新数据,DELETE删除数据。熟练掌握这些步骤,并学习处理常见问题和优化数据库性能,才能高效使用MySQL。

PS羽化如何控制过渡的柔和度? PS羽化如何控制过渡的柔和度? Apr 06, 2025 pm 07:33 PM

羽化控制的关键在于理解其渐变本质。PS本身不提供直接控制渐变曲线的选项,但你可以通过多次羽化、配合蒙版、精细选区,灵活调整半径和渐变柔和度,实现自然过渡效果。

mysql 是否要付费 mysql 是否要付费 Apr 08, 2025 pm 05:36 PM

MySQL 有免费的社区版和收费的企业版。社区版可免费使用和修改,但支持有限,适合稳定性要求不高、技术能力强的应用。企业版提供全面商业支持,适合需要稳定可靠、高性能数据库且愿意为支持买单的应用。选择版本时考虑的因素包括应用关键性、预算和技术技能。没有完美的选项,只有最合适的方案,需根据具体情况谨慎选择。

PS羽化怎么设置? PS羽化怎么设置? Apr 06, 2025 pm 07:36 PM

PS羽化是一种图像边缘模糊效果,通过在边缘区域对像素加权平均实现。设置羽化半径可以控制模糊程度,数值越大越模糊。灵活调整半径可根据图像和需求优化效果,如处理人物照片时使用较小半径保持细节,处理艺术作品时使用较大半径营造朦胧感。但需注意,半径过大易丢失边缘细节,过小则效果不明显。羽化效果受图像分辨率影响,且需要根据图像理解和效果把握进行调整。

mysql安装后怎么优化数据库性能 mysql安装后怎么优化数据库性能 Apr 08, 2025 am 11:36 AM

MySQL性能优化需从安装配置、索引及查询优化、监控与调优三个方面入手。1.安装后需根据服务器配置调整my.cnf文件,例如innodb_buffer_pool_size参数,并关闭query_cache_size;2.创建合适的索引,避免索引过多,并优化查询语句,例如使用EXPLAIN命令分析执行计划;3.利用MySQL自带监控工具(SHOWPROCESSLIST,SHOWSTATUS)监控数据库运行状况,定期备份和整理数据库。通过这些步骤,持续优化,才能提升MySQL数据库性能。

PS羽化对图像质量有什么影响? PS羽化对图像质量有什么影响? Apr 06, 2025 pm 07:21 PM

PS羽化会导致图像细节丢失、色彩饱和度降低和噪点增加。为了减少影响,建议使用较小的羽化半径,复制图层后再羽化,以及仔细对比羽化前后图像质量。此外,羽化并不适用于所有情况,有时蒙版等工具更适合处理图像边缘。

如何针对高负载应用程序优化 MySQL 性能? 如何针对高负载应用程序优化 MySQL 性能? Apr 08, 2025 pm 06:03 PM

MySQL数据库性能优化指南在资源密集型应用中,MySQL数据库扮演着至关重要的角色,负责管理海量事务。然而,随着应用规模的扩大,数据库性能瓶颈往往成为制约因素。本文将探讨一系列行之有效的MySQL性能优化策略,确保您的应用在高负载下依然保持高效响应。我们将结合实际案例,深入讲解索引、查询优化、数据库设计以及缓存等关键技术。1.数据库架构设计优化合理的数据库架构是MySQL性能优化的基石。以下是一些核心原则:选择合适的数据类型选择最小的、符合需求的数据类型,既能节省存储空间,又能提升数据处理速度

Navicat查看MongoDB数据库密码的方法 Navicat查看MongoDB数据库密码的方法 Apr 08, 2025 pm 09:39 PM

直接通过 Navicat 查看 MongoDB 密码是不可能的,因为它以哈希值形式存储。取回丢失密码的方法:1. 重置密码;2. 检查配置文件(可能包含哈希值);3. 检查代码(可能硬编码密码)。

See all articles