我试图auto.arima通过在带有4个双核CPU的计算机上运行来加速缓慢的功能(我使用的是Ubuntu 13.04和R 2.15.2).该函数拟合了350,000个数据点和大约50个外生变量的时间序列.我正在使用以下代码
fit<-auto.arima(orders,xreg=exogen, stepwise=FALSE, parallel=TRUE, num.cores=4)
Run Code Online (Sandbox Code Playgroud)
但是,我有多个CPU(每个都有多个内核),而不只是一个具有多个内核的CPU.如果R足够智能以解决这个核心/ CPU的差异,我看了看我的资源监视器并看到了这个:

这表明只有CPU3最大化.
有关如何解决的任何想法?forecast包是否适用DoSNOW?
我使用的是fourier()和fourierf()功能罗恩海德门的出色forecast包河展望验证的相同条款是否被选中,并在使用fourier()和fourierf(),我策划了几个输出项.
以下是使用的原始数据ts.plot(data).在时间序列中,频率为364,仅供参考. 
以下是使用术语的图表fourier(data,3).基本上,它看起来像现有数据的镜像.

再看看输出的sin1项,我们得到一些变化,显示类似的364天季节性与上述数据一致.

但是,当我使用fourierf(data,3, 410)以下数据绘制傅里叶预测的结果时.它似乎比原始fourier函数提供的术语更加平滑.

所以,我想知道的结果fourier()和fourierf()有关.是否可以只看到一个合并的傅立叶结果,以便您可以看到通过现有数据然后通过预测期间的罪或余弦结果?如果没有,我如何确认通过fourierf()拟合样本数据创建的术语?
我想在与其他外部回归量的函数auto.arima或glm函数中使用它,如下所示:
trainFourier<-fourier(data,3)
trainFourier<-as.data.frame(trainFourier)
trainFourier$exogenous<-exogenousData
arima.object<-auto.arima(data, xreg=trainFourier)
futureFourier<-fourierf(data,3, 410)
fourierForecast<-forecast(arima.object, xreg=futureFourier, h=410)
Run Code Online (Sandbox Code Playgroud)
并且想要完全确定auto.arima具有适当的拟合(使用术语from fourier())到我将在xreg下放入的内容forecast(其中包含来自不同函数的术语,即ffourier()).
我正在训练scikit-learn的neighbors.KNeighborsClassifier模型对象来预测多类分类问题。我已经预测了最可能的类,但现在我想提取使用该predict_proba函数预测的第二个最可能的类。然而,该函数的输出只是给出了一个原始的 numpy 数组,它应该是按字典顺序排序的。但是,当我观察数据以查看概率是否按字母顺序排列时,但似乎并非如此。
from sklearn import neighbors
knn_classifier = neighbors.KNeighborsClassifier(n_neighbors = NUM_NEIGHBORS, weights = 'distance', metric ='haversine' )
knn_classifier.fit(knn_data, response)
unique_levels = response.unique()
unique_levels.sort()
print unique_levels
['Canada' 'DCarea' 'NYarea' 'bostonArea' 'caribbean' 'eastAsia' 'florida'
'hawaii' 'italy' 'midwest' 'nevada' 'newEngland' 'northernEurope'
'northern_california' 'northern_france' 'notFound' 'otherSouthernEurope'
'pacificNW' 'pennArea' 'south' 'southAmerica' 'southeastAsiaAus'
'southern_california' 'spain' 'texas' 'unitedKingdom' 'west']
knn_preds = knn_classifier.predict(knn_data)
knn_probs = knn_classifier.predict_proba(knn_data)
knn_preds[0:10]
array(['DCarea', 'NYarea', 'DCarea', 'Canada', 'midwest', 'unitedKingdom',
'midwest', 'NYarea', 'NYarea', 'south'], dtype=object)
knn_probs[0]
array([ 0. …Run Code Online (Sandbox Code Playgroud) 我在pandas数据框中有许多基于字符串的列,我希望在scikitlearn分类模型上使用它们。我知道我必须使用oneHotEncoder正确编码变量,但首先,我想减少列中的变化,取出列中出现时间少于 x% 或不在前 x 中的字符串字符串按列中的计数。
下面是一个例子:
df1 = pd.DataFrame({'a':range(22), 'b':list('aaaaaaaabbbbbbbcccdefg'), 'c':range(22)})
df1
a b c
0 0 a 0
1 1 a 1
2 2 a 2
3 3 a 3
4 4 a 4
5 5 a 5
6 6 a 6
7 7 a 7
8 8 b 8
9 9 b 9
10 10 b 10
11 11 b 11
12 12 b 12
13 13 b 13
14 14 b …Run Code Online (Sandbox Code Playgroud) 我有一个正则表达式列表和一个目标短语列表.我希望将每个正则表达式与每个短语匹配,返回列表列表,其中行是术语和列是正则表达式,数据是匹配对象,或None尽可能简洁.我当前的方法做了这个匹配,但不幸的是给了我一个长列表,而不是我描述的列表列表.
这就是我所拥有的:
import re
regexLines=['[^/]*/b/[^/]*', 'a/[^/]*/[^/]*', '[^/]*/[^/]*/c', 'foo/bar/baz', 'w/x/[^/]*/[^/]*', '[^/]*/x/y/z']
targetLines=['/w/x/y/z/', 'a/b/c', 'foo/', 'foo/bar/', 'foo/bar/baz/']
###compiling the regex lines
matchLines=[re.compile(i) for i in regexLines]
matchMatrix=[i.match(j) for i in matchLines for j in targetLines]
matchMatrix
[None, <_sre.SRE_Match object at 0x04095368>, None, None, None, None, <_sre.SRE_Match object at 0x0411A3D8>, None, None, None, None, <_sre.SRE_Match object at 0x0411A410>, None, None, None, None, None, None, None, <_sre.SRE_Match object at 0x0411A448>, None, None, None, None, None, None, None, None, None, None]
Run Code Online (Sandbox Code Playgroud)
我想要一些看起来像这样的东西,每行代表一个短语的匹配:
[[None, …Run Code Online (Sandbox Code Playgroud) 我有一个值列表,表示一段正则表达式在字符串中匹配的次数.从这里,我想找到不止一次出现的数字及其数量.例如,因为[2, 2, 2, 0, 2, 1, 3, 3]我想要{2:4,3:2}输出,如果它在一个字典中,或者[[2,4],[3,2]]它在列表列表中.我正在寻找最快,最简洁的方法来做到这一点.现在,我通过以下代码完成,但认为这是详细的最佳方式.
numWinners=[2, 2, 2, 0, 2, 1]
tieCount={x:numWinners.count(x) for x in numWinners}
ties=dict()
for key, value in tieCount.items():
if value>1:
ties[key]=value
print ties
{2: 4, 3: 2}
Run Code Online (Sandbox Code Playgroud)
列表或字典输出对我来说不是一个问题 - 再次,无论什么是最快和最简洁的.
我有一个大约200个变量的数据集.我想了解其中一个变量如何与其他变量相关联.然而,当我使用corrplot()它时,它给了我完整的相关矩阵,它是200x200单元格的大小 - 以及大到可以很好地可视化的方式.
我将使用iris数据集作为可重现的示例.说,在这里,我只想sepal.length在x轴上看到,而sepal.length在y轴上看到所有其他变量.
library(corrplot)
corrplot(cor(iris[,1:4]))
Run Code Online (Sandbox Code Playgroud)
创建这个:

但相反,我想要这样:

python ×4
r ×3
forecasting ×2
scikit-learn ×2
correlation ×1
dictionary ×1
heatmap ×1
iterator ×1
list ×1
numpy ×1
pandas ×1
r-corrplot ×1
regex ×1