小编snt*_*nth的帖子

在pandas中使用布尔数组索引对象的最惯用的方法是什么?

我特别在谈论Pandas版本0.11,因为我正忙着用.loc或.iloc替换我对.ix的使用.我喜欢这样一个事实,即区分.loc和.iloc会告诉我是打算按标签还是整数位置进行索引.我看到任何一个人都会接受一个布尔数组,但我想保持他们的使用纯粹,以清楚地传达我的意图.

python pandas

6
推荐指数
1
解决办法
3195
查看次数

如何从IPython 3.x/Jupyter Notebook中访问配置?

特别是我想知道base_url代码运行的Notebook Server.

在IPython笔记本版本2.x中我曾经做过以下事情:

config = get_ipython().config
print config['NotebookApp']['base_url']
Run Code Online (Sandbox Code Playgroud)

但是,这在IPython Notebook 3.x/Jupyter笔记本中不再有效.

编辑:关于我想要实现的更多细节.

我在同一主机上的不同Docker容器中运行各种IPython服务器,这些容器通过不同的base_urls 访问.我想使用quantopian/qgrid包在Notebook中显示Pandas DataFrames.最初qgrid没有处理自定义base_url前缀来提供Javascript依赖项的本地副本,但上面的代码允许我base_url在IPython 2中找到并将相关内容base_url注入Javascript模板.

我还想在Notebook中使用mpld3库,在浏览他们的文档时,我发现他们也提到在"IPython 2.0+中,如果添加了url前缀,local = True可能会失败(例如通过设置NotebookApp.base_url)"所以这似乎不是一个孤立的问题,一个好的解决方案是值得的.

鉴于@ matt的评论如下,并且更多地考虑内核与前端拆分,有意义的是,无法从内核访问NotebookApp配置.实际上生成的JS代码需要知道它base_url是什么,所以如果有人能指出我可以在Notebook JS API中访问它的地方,那应该解决它.

ipython ipython-notebook jupyter

6
推荐指数
1
解决办法
978
查看次数

如何在pandas DataFrame中展平分层列索引?

假设我pandas.DataFrame在列上有一个分层索引,如下所示:

import pandas as pd
columns = pd.MultiIndex.from_product([list('AB'), list('ab')])
df = pd.DataFrame(np.arange(8).reshape((2,4)), columns=columns)
print df
Run Code Online (Sandbox Code Playgroud)

出[1]:

   A     B   
   a  b  a  b
0  0  1  2  3
1  4  5  6  7
Run Code Online (Sandbox Code Playgroud)

我想展平列索引,使其如下所示:

   Aa  Ab  Ba  Bb
0   0   1   2   3
1   4   5   6   7
Run Code Online (Sandbox Code Playgroud)

我试过了

def flatten(col):
    col.name = ''.join(col.name)
    return col

df.apply(f)
Run Code Online (Sandbox Code Playgroud)

但是这只是忽略了新列的修改名称.

python pandas

6
推荐指数
1
解决办法
3550
查看次数

如何使用 PyMongo 将索引从一个集合复制到另一个集合?

在另一个问题(如何使用 PyMongo 将集合从一个数据库复制到同一服务器上的另一个数据库?)中,我弄清楚了如何将一个 MongoDB 集合复制到同一服务器上的另一个数据库。但是,这不会复制源集合上的索引,那么我如何复制这些索引呢?

python mongodb pymongo

5
推荐指数
2
解决办法
2050
查看次数

有没有办法在 reStructuredText 的表格单元格中将一个单词分成多行,以便它在输出中显示为单个单词?

假设我有一张类似的桌子reStructuredText

+---------------+---------------------------+
| key           | value                     |
+===============+===========================+
| short_word    | value_1                   |
+---------------+---------------------------+
| really_long_  | value 2                   |
| word_I_want_  |                           |
| to_break      |                           |
+---------------+---------------------------+
Run Code Online (Sandbox Code Playgroud)

有没有办法打破左下角单元格中的单词,即使用行继续转义字符或类似的字符,以便它仍然在输出中显示为单个单词?

特别是,我使用 Sphinx 来记录我的 Python 文档,并且由于尾随下划线字符,它将第一行解释为链接目标,从而生成错误。

restructuredtext python-sphinx

4
推荐指数
1
解决办法
5157
查看次数

如何在Python字典上执行set操作?

虽然能够在字典的键之间进行设置操作是非常有用的,但我经常希望我可以对字典本身执行设置操作.

我找到了一些用于区分两个词典的方法,但我发现那些词语非常冗长,并且觉得必须有更多的pythonic答案.

python dictionary

4
推荐指数
1
解决办法
4049
查看次数

如何搭建SQL Server存储过程的开发环境?

我最近开始开发一个遗留应用程序,该应用程序的大部分业务逻辑都位于分布在两个或三个 SQL Server 数据库中的存储过程中。目前所有代码也是在实时环境中编辑的。

由于我是代码库的新手,我真的不想在实时环境中进行任何更改,因此我正在尝试建立一个开发环境。我们使用 Visual Studio 编写所有数据库对象的脚本,并在 Subversion 中跟踪这些对象。这样我就可以设置一个开发 SQL Server 实例来工作,但一个问题是代码充满了对服务器和数据库名称的硬编码引用,例如许多存储过程如下所示:

CREATE PROCEDURE server1.db1.dbo.proc1 AS

INSERT INTO db1.dbo.table1
EXEC server2.db2.dbo.proc2

END
Run Code Online (Sandbox Code Playgroud)

如何以安全的方式更改所有这些引用?到目前为止我想到了两个选择:

1) 有一个脚本运行全局搜索并替换我的 Subversion 工作副本上的服务器名称,然后针对我的测试数据库运行修改后的代码。

2) 通过编辑 \windows\system32\drivers\etc\hosts 文件在我的本地机器上设置 dns 别名,该文件将 server1 和 server2 重定向到数据库的开发实例。在生产服务器上,这些将指向生产数据库。

您认为以下哪一个设置更好?您是否认为我忽略了任何风险以及应该考虑哪些风险?

sql-server stored-procedures development-environment visual-studio

3
推荐指数
1
解决办法
1768
查看次数

如何在SSMS 2008中的调试会话中检查表变量和临时表?

我正在单步执行SQL Server Management Studio 2008(SSMS)中的存储过程.代码创建了一些表变量以及我想要检查的临时#表.现在我可以在"Locals"窗口中看到其他局部变量,而在那里列出表变量时,我看不到它们的内容.我还想检查#temp表,但是我想要对它们运行的​​任何select语句都需要来自与我正在逐步执行的代码相同的会话.

这在SSMS 2008调试器中是否可行?

sql-server debugging remote-debugging sql-server-2008

2
推荐指数
1
解决办法
8119
查看次数