小编ant*_*ell的帖子

如何调试从TeamCity部署的nuget包?

我已将我的团队使用的库放入从TeamCity部署到网络文件夹的nuget包中.我虽然无法调试这段代码!SymbolSource是我读过的一个解决方案,但我更愿意找到一些方法直接从Teamcity访问.pdb /源文件.有谁知道如何做到这一点?

编辑. 当我签'Include Symbols and Source'入Nuget Pack构建步骤时,除了网络文件夹中的.nupkg文件之外,TeamCity还会创建.Symbol.nupkg..Symbol.nupkg包含src和.pdb文件.

编辑.'Include Symbols and Source'在TeamCity上取消选中并将以下内容添加到我的nuspec文件中:

  <files>
    <file src="..\MyLibrary\bin\release\MyLibrary.dll" target="lib\net40" />
    <file src="..\MyLibrary\bin\release\MyLibrary.pdb" target="lib\net40" />
    <file src="..\MyLibrary\*.cs" target="src" />
    <file src="..\MyLibrary\**\*.cs" target="src" />
  </files>
Run Code Online (Sandbox Code Playgroud)

这在nuget包中添加了我的库的dll,pdb和源文件,并且没有生成.Symbols文件,我认为这只是符号服务器所需要的.

c# deployment teamcity symbol-server nuget

67
推荐指数
4
解决办法
4万
查看次数

scikit中的分类器 - 学习处理nan/null

我想知道在scikit-learn中是否存在处理nan/null值的分类器.我以为随机森林回归器处理这个,但是当我打电话时我收到了一个错误predict.

X_train = np.array([[1, np.nan, 3],[np.nan, 5, 6]])
y_train = np.array([1, 2])
clf = RandomForestRegressor(X_train, y_train)
X_test = np.array([7, 8, np.nan])
y_pred = clf.predict(X_test) # Fails!
Run Code Online (Sandbox Code Playgroud)

我是否可以使用缺少值的任何scikit-learn算法调用预测?

编辑. 现在我想到这一点,这是有道理的.这在训练期间不是问题,但是当你预测变量为空时如何分支?也许你可以分开两种方式并平均结果?只要距离函数忽略空值,k-NN似乎应该可以正常工作.

编辑2(更老,更聪明) 一些gbm库(例如xgboost)正是为了这个目的而使用三元树而不是二叉树:2个孩子用于是/否决定,1个孩子用于缺失决策.sklearn正在使用二叉树

python machine-learning nan pandas scikit-learn

38
推荐指数
3
解决办法
3万
查看次数

使用Spark中的自定义函数聚合多个列

我想知道是否有某种方法可以为多列上的spark数据帧指定自定义聚合函数.

我有一个类似这样的表(名称,项目,价格):

john | tomato | 1.99
john | carrot | 0.45
bill | apple  | 0.99
john | banana | 1.29
bill | taco   | 2.59
Run Code Online (Sandbox Code Playgroud)

至:

我想将每个人的项目和成本汇总到这样的列表中:

john | (tomato, 1.99), (carrot, 0.45), (banana, 1.29)
bill | (apple, 0.99), (taco, 2.59)
Run Code Online (Sandbox Code Playgroud)

这在数据帧中是否可行?我最近了解到collect_list它,但它似乎只适用于一个专栏.

scala dataframe apache-spark apache-spark-sql orc

32
推荐指数
4
解决办法
2万
查看次数

如何测试是否需要kinit?

如果需要,我想在我的.bashrc文件中添加一些内容来运行kinit.有没有办法测试我是否需要做kinit?像这样的东西:

if [ kinitNeeded ]; 
    do kinit; 
done

kinitNeeded() { ??? }
Run Code Online (Sandbox Code Playgroud)

bash hadoop kerberos

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

Pandas - 在运行时自动检测日期列**

我想知道pandas是否能够自动检测哪些列是datetime对象并以日期而不是字符串的形式读取这些列?

我正在看api和相关的堆栈溢出帖子,但我似乎无法搞清楚.

这是一个黑盒系统,它在生产中接受任意csv架构,所以我不知道列名是什么.

这似乎可以工作但你必须知道哪些列是日期字段:

import pandas as pd

#creating the test data
df = pd.DataFrame({'0': ['a', 'b', 'c'], '1': ['2015-12-27','2015-12-28', '2015-12-29'], '2': [11,12,13]})
df.to_csv('test.csv', index=False)

#loading the test data
df = pd.read_csv('test.csv', parse_dates=True)
print df.dtypes 
# prints (object, object, int64) instead of (object,datetime, int64)
Run Code Online (Sandbox Code Playgroud)

我在想如果它不能这样做,那么我可以写一些东西:

  1. 查找具有字符串类型的列.
  2. 获取一些唯一值并尝试解析它们.
  3. 如果成功,则尝试解析整个列.

编辑. 我写了一个简单的方法convertDateColumns来做到这一点:

import pandas as pd
from dateutil import parser

def convertDateColumns(self, df):
    object_cols = df.columns.values[df.dtypes.values == 'object']
    date_cols = [c for c in object_cols if testIfColumnIsDate(df[c], num_tries=3)]

    for …
Run Code Online (Sandbox Code Playgroud)

python pandas scikit-learn

9
推荐指数
2
解决办法
4978
查看次数

在.NET中,线程完成任务后会发生什么?我需要管理吗?

在完成Console.WriteLine(暂停它或其他东西)后,我是否需要对此线程执行某些操作?或者垃圾收集是否会启动并删除此线程?

public void testThreading() {

    .. do some stuff

    var t = new Thread(() => { Console.WriteLine("hey!"); })
    t.Start();

}
Run Code Online (Sandbox Code Playgroud)

c# multithreading

8
推荐指数
2
解决办法
4012
查看次数

为什么这个sybase错误随着查询的任何更改而消失?

我多年来一直使用的查询突然开始抛出一个奇怪的错误.当我对查询进行外观修改(1 + x而不是x + 1)时,不再出现错误.它抱怨的存储过程甚至不再存在于服务器上!

如果有人对这个问题是什么以及为什么这个"改变"修复了它,我很好奇?

之前的查询:

UPDATE SOME_DB..JOB_QUEUE
SET ERROR_COUNT = ERROR_COUNT + 1,
    JOB_START_TIME = '{1}'
WHERE JOB_ID = {0}
Run Code Online (Sandbox Code Playgroud)

查询后:

UPDATE SOME_DB..JOB_QUEUE
SET ERROR_COUNT = 1 + ERROR_COUNT,
    JOB_START_TIME = '{1}'
WHERE JOB_ID = {0}
Run Code Online (Sandbox Code Playgroud)

它抛出的错误:

Sybase.Data.AseClient.AseException: Procedure sp_net_dblatency expects parameter @heartbeat, which was not supplied.
Run Code Online (Sandbox Code Playgroud)

我想知道是否有人有任何想法在这里发生了什么?

编辑. 这是存储过程.

create procedure sp_net_dblatency
    @heartbeat datetime
as
    update DATABASE_1234..LATENCY set START_UTC_TIME=@heartbeat, END_UTC_TIME=getutcdate() where DATABASE_NAME=db_name()
    if (@@ROWCOUNT = 0)
        insert DATABASE_1234..LATENCY (DATABASE_NAME, START_UTC_TIME, END_UTC_TIME) values (db_name(), @heartbeat, getutcdate())
Run Code Online (Sandbox Code Playgroud)

sql sybase stored-procedures sybase-ase

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

仅当#terms> 3000时,DocumentTermMatrix才会出现奇怪的错误

我的下面的代码工作正常,除非我使用创建一个超过3000个术语的DocumentTermMatrix.这一行:

movie_dict <- findFreqTerms(movie_dtm_train, 8)
movie_dtm_hiFq_train <- DocumentTermMatrix(movie_corpus_train, list(dictionary = movie_dict))
Run Code Online (Sandbox Code Playgroud)

失败:

Error in simple_triplet_matrix(i = i, j = j, v = as.numeric(v), nrow = length(allTerms),  : 
  'i, j, v' different lengths
In addition: Warning messages:
1: In mclapply(unname(content(x)), termFreq, control) :
  all scheduled cores encountered errors in user code
2: In simple_triplet_matrix(i = i, j = j, v = as.numeric(v), nrow = length(allTerms),  :
  NAs introduced by coercion
Run Code Online (Sandbox Code Playgroud)

有什么方法可以解决这个问题吗?对于DocumentTermMatrix,3000*60000矩阵是否太大了?这对于文档分类来说似乎相当小..

完整代码段:

n1 <- 60000
n2 <- 70000
#******* loading the …
Run Code Online (Sandbox Code Playgroud)

r document-classification sentiment-analysis tm

6
推荐指数
0
解决办法
1985
查看次数

Spark - 如何将rdd的前N个作为新的rdd(不收集驱动程序)

我想知道如何过滤具有前N个值之一的RDD.通常我会对RDD进行排序并将topN个项目作为驱动程序中的数组来查找可以广播的第N个值来过滤rdd,如下所示:

val topNvalues = sc.broadcast(rdd.map(_.fieldToThreshold).distict.sorted.take(N))
val threshold = topNvalues.last
val rddWithTopNValues = rdd.filter(_.fieldToThreshold >= threshold)
Run Code Online (Sandbox Code Playgroud)

但是在这种情况下我的N太大了,所以我怎么能用RDD这样做呢?:

def getExpensiveItems(itemPrices: RDD[(Int, Float)], count: Int): RDD[(Int, Float)] = {
     val sortedPrices = itemPrices.sortBy(-_._2).map(_._1).distinct

     // How to do this without collecting results to driver??
     val highPrices = itemPrices.getTopNValuesWithoutCollect(count)

     itemPrices.join(highPrices.keyBy(x => x)).map(_._2._1)
}
Run Code Online (Sandbox Code Playgroud)

scala apache-spark rdd

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

在常用的实用函数中将void返回类型更改为其他内容会有什么危害吗?

如果我有一个像这样的功能

public void usefulUtility(parameters...) { 
    string c = "select * from myDB";
    do_a_database_call(c);
}
Run Code Online (Sandbox Code Playgroud)

在很多地方使用过的,将它更改为:

public bool usefulUtility(parameters...) { 
   string c = "select * from myDB";
   bool result = do_a_database_call(c);
   return result;
}
Run Code Online (Sandbox Code Playgroud)

这可能会破坏任何代码吗?

我什么都想不到......但它有可能吗?

c#

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