我通常使用IPython,并且最近才注意到常规python shell中导入的搜索路径是错误的.根据我的理解,sys.path继承自PYTHONPATH(虽然我不知道PYTHONPATH住在哪里),这在IPython中是不同的?我担心这个有影响的装置.比如我刚尝试过
pip install --upgrade gensim
Run Code Online (Sandbox Code Playgroud)
失败,因为它无法解决我已经安装的scipy依赖项.所以我在Ipython中找到了更深入的鸽子
import gensim
gensim.__version__
Run Code Online (Sandbox Code Playgroud)
在python中返回.9.1
import gensim
gensim.__version__
Run Code Online (Sandbox Code Playgroud)
返回.8.9
以下是Ipython版本的sys.path的样子:
['',
'/Users/change/anaconda/bin',
'/Users/change/anaconda/lib/python2.7/site-packages/pybing-0.12-py2.7.egg',
'/Users/change/anaconda/lib/python2.7/site-packages/httplib2-0.8-py2.7.egg',
'/Users/change/anaconda/python.app/Contents/lib/python27.zip',
'/Users/change/anaconda/python.app/Contents/lib/python2.7',
'/Users/change/anaconda/python.app/Contents/lib/python2.7/plat-darwin',
'/Users/change/anaconda/python.app/Contents/lib/python2.7/plat-mac',
'/Users/change/anaconda/python.app/Contents/lib/python2.7/plat-mac/lib-scriptpackages',
'/Users/change/anaconda/python.app/Contents/lib/python2.7/lib-tk',
'/Users/change/anaconda/python.app/Contents/lib/python2.7/lib-old',
'/Users/change/anaconda/python.app/Contents/lib/python2.7/lib-dynload',
'/Users/change/anaconda/lib/python2.7/site-packages',
'/Users/change/anaconda/lib/python2.7/site-packages/PIL',
'/Users/change/anaconda/lib/python2.7/site-packages/pygoogle',
'/Users/change/anaconda/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg-info',
'/Users/change/anaconda/lib/python2.7/site-packages/IPython/extensions']
Run Code Online (Sandbox Code Playgroud)
和常规的python脚本sys.path:
['',
'/Users/change/anaconda/lib/python2.7/site-packages/pybing-0.12-py2.7.egg',
'/Users/change/anaconda/lib/python2.7/site-packages/httplib2-0.8-py2.7.egg',
'/Users/change/anaconda/lib/python27.zip',
'/Users/change/anaconda/lib/python2.7',
'/Users/change/anaconda/lib/python2.7/plat-darwin',
'/Users/change/anaconda/lib/python2.7/plat-mac',
'/Users/change/anaconda/lib/python2.7/plat-mac/lib-scriptpackages',
'/Users/change/anaconda/lib/python2.7/lib-tk',
'/Users/change/anaconda/lib/python2.7/lib-old',
'/Users/change/anaconda/lib/python2.7/lib-dynload',
'/Users/change/anaconda/lib/python2.7/site-packages',
'/Users/change/anaconda/lib/python2.7/site-packages/PIL',
'/Users/change/anaconda/lib/python2.7/site-packages/pygoogle',
'/Users/change/anaconda/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg-info']
Run Code Online (Sandbox Code Playgroud) 我在R(v 2.15.3)中使用randomForest包(v 4.6-7),可以轻松使用randomForest函数创建模型.但是,当我尝试在我的测试集上进行预测时,找不到predict.randomForest函数.我也尝试用plot.randomForest绘图只是为了得到同样的错误,"找不到函数."
我已经尝试重新安装软件包(可能它已经过时了)并确保拼写完全正确.我无法弄清楚是什么导致了这个错误,任何想法?
我已经注意到单列数据帧几次令人懊恼(下面的例子); 但在大多数其他情况下,单列数据框只是一个系列.有关为什么会返回一列DF的任何押韵或理由吗?
例子:
1)通过布尔掩码索引列时掩码只有一个真值:
df = pd.DataFrame([list('abc'), list('def')], columns = ['foo', 'bar', 'tar'])
mask = [False, True, False]
type(df.ix[:,mask])
Run Code Online (Sandbox Code Playgroud)
2)在DataFrame上设置索引时,只有两列开头:
df = pd.DataFrame([list('ab'), list('de'), list('fg')], columns = ['foo', 'bar']
type(df.set_index('foo'))
Run Code Online (Sandbox Code Playgroud)
我觉得如果我期待只有一列的DF,我可以通过调用来处理它
pd.Series(df.values().ravel(), index = df.index)
Run Code Online (Sandbox Code Playgroud)
但在大多数其他情况下,单列数据框只是一个系列.有关为什么会返回一列DF的任何押韵或理由吗?