小编nic*_*556的帖子

有关调试计算机专用Excel VBA问题的建议

我有一个Excel工作簿,依赖于其他Excel工作簿中的代码(这些依赖.xls是VB级别的引用,即通过VBA编辑器中的Tools-> References对话框),以及对dll的一些依赖,例如:Microsoft Scripting运行时Microsoft Forms 2.0对象库

这张表在大约20台运行Windows XP和Office XP的计算机上工作了大约2年.最近我们收到了3台新机器(相同的操作系统,相同的办公室版本)拒绝运行此表.当工作表打开时,它会抛出"编译错误",并且会话挂起.

如果我在'坏'机器上打开工作表,按住左移键以停止宏运行,然后转到VBA编辑器 - >调试 - >编译VBAProject,它编译得很好.然后,我可以保存工作表并在"坏"机器上正常打开它.然而,这个新版本的表格拒绝在"好"的机器上运行!

我认为在'好'和'坏'机器上的某些dll之间必定存在某种版本不匹配.如何确定导致问题的原因?有没有可用于比较com组件版本的工具?

excel vba excel-vba

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

将numpy数组堆叠到对角线上

给定N 2d numpy数组,是否有一种简洁的方法可以在对角线上"堆叠"或"绑定"它们,用0填充任何新的插槽?例如给出:

arr1 = np.array([[1, 2],
                 [3, 4]])

arr2 = np.array([[9, 8, 7],
                 [6, 5, 4],
                 [3, 2, 1]])
Run Code Online (Sandbox Code Playgroud)

我想创建:

arr = np.array([[1, 2, 0, 0, 0],
                [3, 4, 0, 0, 0], 
                [0, 0, 9, 8, 7],
                [0, 0, 6, 5, 4],
                [0, 0, 3, 2, 1]])
Run Code Online (Sandbox Code Playgroud)

python numpy linear-algebra

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

sklearn TimeSeriesSplit cross_val_predict仅适用于分区

我试图在sklearn版本0.18.1中使用TimeSeriesSplit交叉验证策略和LogisticRegression估算器.我得到一个错误说明:

cross_val_predict仅适用于分区

以下代码段显示了如何重现:

from sklearn import linear_model, neighbors
from sklearn.model_selection import train_test_split, cross_val_predict, TimeSeriesSplit, KFold, cross_val_score
import pandas as pd
import numpy as np
from datetime import date, datetime

df = pd.DataFrame(data=np.random.randint(0,10,(100,5)), index=pd.date_range(start=date.today(), periods=100), columns='x1 x2 x3 x4 y'.split())


X, y = df['x1 x2 x3 x4'.split()], df['y']
score = cross_val_score(linear_model.LogisticRegression(fit_intercept=True), X, y, cv=TimeSeriesSplit(n_splits=2))
y_hat = cross_val_predict(linear_model.LogisticRegression(fit_intercept=True), X, y, cv=TimeSeriesSplit(n_splits=2), method='predict_proba')
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

python scikit-learn cross-validation logistic-regression

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

sqlalchemy查询中的DateTime按年份排序元素

我有一个Sybase表,使用sqlalchemy进行声明映射,如下所示:

from   sqlalchemy.ext.declarative import declarative_base    
Base = declarative_base()

class Appointment(base):
    __tablename__ = 'APPOINTMENT'
    __table_args__ = {'quote':False}

    dt = Column(Date, name='dt_appointment')
Run Code Online (Sandbox Code Playgroud)

如何查询此表,按年份排序(dt_appointment)?Year()是一个有效的sybase T-SQL函数.我试过包括一个计算列,例如:

dtYear = Column(Integer, name='Year(dt_appointment)', quote=False)
Run Code Online (Sandbox Code Playgroud)

这不适用于查询:

session.Query(Appointment).order_by(Appointment.dtYear)
Run Code Online (Sandbox Code Playgroud)

sqlalchemy sybase-ase

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