我正在尝试使用kernlabR包来做支持向量机(SVM).对于我非常简单的例子,我有两条训练数据.A和B.
(A和B属于类型matrix- 它们是图形的邻接矩阵.)
所以我写了一个函数,它接受A + B并生成一个核矩阵.
> km
[,1] [,2]
[1,] 14.33333 18.47368
[2,] 18.47368 38.96053
Run Code Online (Sandbox Code Playgroud)
现在我使用kernlab的ksvm函数来生成我的预测模型.现在,我只想努力工作 - 我不担心训练错误等.
所以,问题1:我是否正确生成了我的模型?合理?
# y are my classes. In this case, A is in class "1" and B is in class "-1"
> y
[1] 1 -1
> model2 = ksvm(km, y, type="C-svc", kernel = "matrix");
> model2
Support Vector Machine object of class "ksvm"
SV type: C-svc (classification)
parameter : cost C …Run Code Online (Sandbox Code Playgroud) 我正在研究一个项目并尝试使用 pthread_cond_wait()和 pthread_cond_signal()同步两个线程.
我的代码看起来像这样:
pthread_mutex_t lock_it = PTHREAD_MUTEX_INITIALIZER;
pthread_cond_t write_it = PTHREAD_COND_INITIALIZER;
int main(int argc, char**argv)
{
pthread_t t_send_segments, t_recv_acks;
pthread_create(&t_send_segments, NULL, send_segments, (void*)NULL);
pthread_create(&t_recv_acks, NULL, recv_acks, (void*)NULL);
pthread_join(t_recv_acks, (void**)NULL);
pthread_mutex_destroy(&lock_it);
pthread_cond_destroy(&write_it);
}
void* send_segments(void *v) {
for(;;) {
pthread_mutex_lock(&lock_it);
printf("s1\n");
printf("s2\n");
pthread_cond_wait(&write_it, &lock_it);
printf("s3\n");
printf("s4\n");
printf("s5\n");
pthread_mutex_unlock(&lock_it);
}
return 0;
}
void* recv_acks(void *v) {
for(;;) {
pthread_mutex_lock(&lock_it);
printf("r1\n");
pthread_cond_signal(&write_it);
printf("r2\n");
pthread_mutex_unlock(&lock_it);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
预期的产出是:
s1
s2
r1
s3
s4
s5
s1
s2
r2
r1 …Run Code Online (Sandbox Code Playgroud) 我在github上有一个项目,我只是承诺并推动它.但是,我的更改不会显示在github上.
我想我没有master检查过分支机构.这意味着我不知道我目前正在工作的分支机构的名称.老实说,我真的不知道我在哪里提交了我的更改.
如何找出我目前检查的分支?如何将这些变化合并到master?我刚刚做了什么?
当我承诺时,它说:
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# Not currently on any branch.
Run Code Online (Sandbox Code Playgroud)
然后我做了一个git push,我不知道那里被推到了哪里.
$ git log
commit dcb85bcfafa18d9dfe9f12659e7ba0e2662ca45e
Author: ...
Date: Wed May 18 22:41:57 2011 -0400
Fix for new vm website layout, add CREDITS
Run Code Online (Sandbox Code Playgroud)
我的代码在哪里?我怎样才能将它合并到master中?
我正在使用ffmpeg将家庭视频转换为DVD格式,并希望在进行转换之前计算输出文件大小.
我的输入文件的比特率为7700 kbps,长度为114秒.音频比特率是256 kbit(每秒?)输入文件是77MB.为了获得这些信息,我跑了:
mplayer -vo null -ao null -frames 0 -identify input.MOD
所以理论上,输入文件应该(大致)文件大小为:
((7700/8)*114)/ 1024
也就是说,(7700/8)是千字节/秒,乘以114秒,然后转换为兆字节.这给了我107MB,超出了我的77.因此我对他的公式持怀疑态度.
也就是说,转换视频后:
ffmpeg -i input.MOD -y -target ntsc-dvd -sameq -aspect 4:3 output.mpg
Run Code Online (Sandbox Code Playgroud)
这些数字似乎更有意义.比特率是9000 kbps,应用上面的公式,我得到125MB,我的实际输出文件大小是126MB.
那么,有两个问题:
如何将音频比特率计入此计算?它是附加的(视频文件大小+音频文件大小)?
DVD总是有9000千比特/秒的速率吗?这是DVD的定义吗?或者可能会根据我输入视频的视频质量而改变?什么"-target ntsc-dvd"保证我的视频?
为什么我的输入文件与计算"不匹配",但输出文件呢?还有其他一些我不考虑的变量吗?
计算文件大小的正确方法是什么?
这里发生了什么?
这预期:
>>> datetime.min - timedelta(days=1)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
OverflowError: date value out of range
Run Code Online (Sandbox Code Playgroud)
意外:
>>> datetime.min - timedelta(days=2)
datetime.datetime(1, 0, 255, 0, 0)
>>> datetime.min > (datetime.min - timedelta(days=2))
True
Run Code Online (Sandbox Code Playgroud)
在python中,当你从datetime.min中减去这些值意味着什么?他们代表什么日期?为什么有些情况不会触发OverflowError?
我正在使用UPS API生成EPL标签,以便在我们的热敏打印机上打印,这样可以完美地使用CUPS和lpr.
但是,我希望能够以计算机可渲染的格式保存该标签:GIF,PDF,PostScript - 真的.
我无法找到一个库,可以将原始EPL数据转换为任何其他格式.有没有可以做到这一点的图书馆?或者LPR选项或包将输出到文件而不是打印机?如何将Eltron编程语言文件转换为其他文件?
哎呀.无论如何,我格式化了所有代码元素,使它们缩进了40px.现在,我的<span>之间有换行符?我所有的斜体文本都应该与他们各自的代码相邻.现在,他们正处于单独的休息时间.
如果您检查我的源代码,则跨度具有以下代码:
<span class="taginfo">(<em>deprecated</em>)</span></code>
Run Code Online (Sandbox Code Playgroud)
基本上就是这样.在将代码格式化为缩进之前,这很好.如果有帮助,stackoverflow上的另一个成员帮我格式化代码:
.substructure code{
display: block;
margin: 0 40px;
line-height: 18px;
font-size: 13px;
}
Run Code Online (Sandbox Code Playgroud)
.substructure是我的代码部分的div id
我明白了str.join():
>>> '|'.join(['1','2','3'])
'1|2|3'
Run Code Online (Sandbox Code Playgroud)
是否有输出清单的东西?是否有输出的功能:
['1', '|', '2','|', '3']
Run Code Online (Sandbox Code Playgroud)
那是一个str.join()列表吗?(或任何其他可迭代?)
我有一个具有以下结构的文档:
[{
"items": [
{
"sent_to_lab": 123,
"received_from_lab": 456,
},
{
"sent_to_lab": 123,
},
]
}
... more orders ...
]
Run Code Online (Sandbox Code Playgroud)
我想获取至少有一个项目符合以下条件的所有订单:
'$and': [
{'items.sent_to_lab': {'$exists': True}},
{'items.received_from_lab': {'$exists': False}},
]
Run Code Online (Sandbox Code Playgroud)
所以在这种情况下,我想返回上述项目,因为items数组中至少有一个元素符合我的标准.
我怎么能在mongo中这样做?
我是 Go 新手,使用 Mux 接受 HTTP POST 数据。我想使用MaxBytesReader来确保客户端不会淹没我的服务器。根据代码,有一个requestBodyLimit布尔值指示是否已达到该限制。
我的问题是:在使用 MaxBytesReader 时,如何确定在处理请求时是否真的达到了最大值?
这是我的代码:
package main
import (
"fmt"
"log"
"html/template"
"net/http"
"github.com/gorilla/mux"
)
func main() {
r := mux.NewRouter()
r.HandleFunc("/handle", maxBytes(PostHandler)).Methods("POST")
http.ListenAndServe(":8080", r)
}
// Middleware to enforce the maximum post body size
func maxBytes(f http.HandlerFunc) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
// As an example, limit post body to 10 bytes
r.Body = http.MaxBytesReader(w, r.Body, 10)
f(w, r)
}
}
func PostHandler(w …Run Code Online (Sandbox Code Playgroud)