正如我所理解的那样,有两种方法可以做Python装饰器,既可以使用__call__类,也可以定义函数作为装饰器.这些方法的优点/缺点是什么?有一种首选方法吗?
例1
class dec1(object):
def __init__(self, f):
self.f = f
def __call__(self):
print "Decorating", self.f.__name__
self.f()
@dec1
def func1():
print "inside func1()"
func1()
# Decorating func1
# inside func1()
Run Code Online (Sandbox Code Playgroud)
例2
def dec2(f):
def new_f():
print "Decorating", f.__name__
f()
return new_f
@dec2
def func2():
print "inside func2()"
func2()
# Decorating func2
# inside func2()
Run Code Online (Sandbox Code Playgroud) 我正在使用scikit-learn将文本文档(22000)分类为100个类.我使用scikit-learn的混淆矩阵方法来计算混淆矩阵.
model1 = LogisticRegression()
model1 = model1.fit(matrix, labels)
pred = model1.predict(test_matrix)
cm=metrics.confusion_matrix(test_labels,pred)
print(cm)
plt.imshow(cm, cmap='binary')
Run Code Online (Sandbox Code Playgroud)
这就是我的混淆矩阵的样子:
[[3962 325 0 ..., 0 0 0]
[ 250 2765 0 ..., 0 0 0]
[ 2 8 17 ..., 0 0 0]
...,
[ 1 6 0 ..., 5 0 0]
[ 1 1 0 ..., 0 0 0]
[ 9 0 0 ..., 0 0 9]]
Run Code Online (Sandbox Code Playgroud)
但是,我没有收到明确或清晰的情节.有一个更好的方法吗?
我正在尝试确定elasticsearch实例是否正在运行,但它似乎不是:
ubuntu@ubuntu:~$ sudo service elasticsearch status
* elasticsearch is not running
ubuntu@ubuntu:~$ sudo service elasticsearch start
* Starting Elasticsearch Server [ OK ]
ubuntu@ubuntu:~$ sudo service elasticsearch status
* elasticsearch is not running
and
ubuntu@ubuntu:~$ sudo /etc/init.d/elasticsearch status
* elasticsearch is not running
ubuntu@ubuntu:~$ sudo /etc/init.d/elasticsearch start
* Starting Elasticsearch Server [ OK ]
ubuntu@ubuntu:~$ sudo /etc/init.d/elasticsearch status
* elasticsearch is not running
ubuntu@ubuntu:/etc/elasticsearch# sudo service elasticsearch restart
* Stopping Elasticsearch Server [ OK ]
* Starting Elasticsearch Server [ …Run Code Online (Sandbox Code Playgroud) 我想使用Emacs作为iPython notebooks/Jupyter Notebook(包ein)的主编辑器.我想问你是否有办法在不需要打开网络浏览器的情况下运行服务器.
我想知道是否有办法重新启动ipython内核而不关闭它,就像笔记本中存在的内核重启功能一样.我试过,%reset但似乎没有清除进口.
在阅读了如何不按平均评级排序后,我很好奇是否有人对伯努利参数的Wilson分数置信区间的下限进行了Python实现?
我正在运行Ubuntu 11.04.我安装了终结者终端仿真器 0.95和Zsh,版本4.3.15.
我在Zsh里面的键有(众所周知的)问题.至少这些:
我已经尝试过.zshrc的一些配置来解决这个问题,但到目前为止还没有真正有效的方法.也许这与终结者和Zsh的组合有关.我在这个页面上看了2个配置:https://bbs.archlinux.org/viewtopic.php?pid = 428669.
是否有人有类似的配置(特别是终结者和Zsh)并找出需要插入.zshrc以修复密钥设置的内容?
我有一个由员工经理作为键值对的字典:
{'a': 'b', 'b': 'd', 'c': 'd', 'd': 'f'}
Run Code Online (Sandbox Code Playgroud)
我想用字典来展示各级员工经理(员工的老板,老板的老板,老板老板的老板等)之间的关系.所需的输出是:
{'a': [b,d,f], 'b': [d,f], 'c': [d,f], 'd': [f] }
Run Code Online (Sandbox Code Playgroud)
这是我的尝试,只显示第一级:
for key, value in data.items():
if (value in data.keys()):
data[key] = [value]
data[key].append(data[value])
Run Code Online (Sandbox Code Playgroud)
我可以做另一个条件语句来添加下一个级别,但这是错误的方法.我对字典不太熟悉,那么什么是更好的方法呢?
我在SQLServer 2008r2中有一个表,如下所示.
我想选择[Fg]列= 1的所有记录,其中每个记录连续按[Id]顺序导入每个[T_Id]和[N_Id]组合的值2 .
可能存在[Fg]= 2 之前的记录不= 1的情况
可以有任意数量的记录,其值[Fg]= 1,但只有一个记录,其中[Fg]每个记录= 2 [T_Id]和[N_Id]组合.
因此,对于下面的示例,我想选择带有[Id]s(4,5)和(7,8,9)和(19,20)的记录.
[T_Id]不包括3和4的任何记录.
预期产出
示例数据集
DECLARE @Data TABLE ( Id INT IDENTITY (1,1), T_Id INT, N_Id INT, Fg TINYINT )
INSERT INTO @Data
(T_Id, N_Id, Fg)
VALUES
(1, 2, 0), (1, 2, 1), (1, 2, 0), (1, 2, 1), (1, 2, 2), (2, 3, 0), (2, 3, 1), …Run Code Online (Sandbox Code Playgroud) 有没有办法从Amazon Redshift进行SQL转储?
你可以使用SQL workbench/J客户端吗?
python ×6
algorithm ×2
ipython ×2
ubuntu ×2
amazon-s3 ×1
decorator ×1
dictionary ×1
dump ×1
kernel ×1
matplotlib ×1
matrix ×1
mysql ×1
python-2.7 ×1
ranking ×1
reload ×1
scikit-learn ×1
sql ×1
sql-server ×1
statistics ×1
t-sql ×1
terminator ×1
zsh ×1
zshrc ×1