我想在Haskell项目中使用外部库RDFox.
上下文:我使用GHC 7.10和堆栈在64位上运行Windows和Linux .RDFox是用C++编程的.可以使用Java和Python包装器下载RDFox共享库(.dll,.so).
目的:我想在我的Haskell项目中重用RDFox(.dll,.so)中的编译库,因此我需要为RDFox创建一个Haskell包装器.
问题:对于Haskell来说相对较新,我很难知道从哪里开始.我找到了几个关于这个主题的页面(来自Haskell wiki和StackOverflow),但工作流程和配置对我来说并不清楚.
问题:我想知道:
- 如何配置堆栈和cabal以使用外部库,在Windows 或 Linux(不同的机器,相同的存储库)上构建.
- 如何在此外部库上配置GHCi以进行交互式测试.
- 将Python包装器转换为Haskell是最好的方法吗?我想避免分析RDFox C++代码.
我有来自参与者的受试者内部生理数据(part),他们都在三轮(round)中查看了刺激(阅读报纸),每轮都有五篇论文(paper),并且在报纸中每个都有不同的访问次数(visit) .我有两个固定的因素(CONDhier和CONDabund)加上相互作用来预测生理状态(例如EDA),这通常是自回归的.我试着考虑生理学中随机效应的个体差异(让我们暂时解决拦截问题),并且可能会因为其他随机效应而导致疲劳.
因此,我希望在R中运行的模型在SPSS中是:
MIXED EDA BY CONDhier CONDabund
/FIXED=CONDhier CONDabund CONDhier*CONDabund | SSTYPE(3)
/RANDOM=INTERCEPT | SUBJECT(part) COVTYPE(VC)
/RANDOM=INTERCEPT | SUBJECT(part*round) COVTYPE(VC)
/PRINT=SOLUTION
/METHOD=REML
/REPEATED=visit | SUBJECT(part*round*paper) COVTYPE(AR1).
Run Code Online (Sandbox Code Playgroud)
现在,我已经明白,虽然lme没有做好交叉术语,lmer(处理交叉术语没有问题)不能使用不同的协方差结构.我可以运行简单的lme模型,如
lme(EDA ~ factor(CONDhier) * factor(CONDabund), random= ~1
|part, na.action=na.exclude, data=phys2)
Run Code Online (Sandbox Code Playgroud)
但是更复杂的模型超出了我的范围.我已经读过lme中的交叉术语可以用随机定义来完成
random=pdBlocked(list(pdCompSymm(~part), pdCompSymm(~round-1), pdCompSymm(~paper-1),
pdCompSymm(~visit-1)))
Run Code Online (Sandbox Code Playgroud)
但这似乎阻止了AR1结构,并且第二次随机拦截了部分*round,来自我.而且我不太确定它和我的SPSS语法一样.
那么,有什么建议吗?虽然在lme和lmer上有很多不同的着作,但我找不到一个既有交叉术语又有AR1的作品.
(另外,关于lme的语法看起来很模糊:从几个不同的来源我已经理解了|在左边的东西下面是什么,组成嵌套术语,~1是随机截距,~x是随机斜率,和~1 + x都是,但似乎至少有:和-1定义,我在任何地方都找不到.是否有一个教程可以解释所有不同的定义?)
我正在制作一个时间序列折线图,让用户从当前滚动回来.我可以在实时d3.js图表上找到教程,我可以找到关于缩放和平移的教程,我可以找到有关使用外部数据源的教程.我无法将所有这些知识融合在一起.
这是我正在寻找的行为:
- 图表可以及时向后平移(意味着线条,数据点和轴随着鼠标或手指的拖动而移动)
- 平移应仅影响x轴,不应进行缩放.
- 当用户平移图表时,会加载更多数据,从而提供无限滚动体验
- 我打算在至少一个额外的"页面"缓冲数据中为用户滚动进入(已经找到了这部分)
- 我认为我不需要转换,因为图表的平移已经可以顺利地转换它
这是我到目前为止所做的工作:
// set up a zoom handler only for panning
// by limiting the scaleExtent
var zoom = d3.behavior.zoom()
.x(x)
.y(y)
.scaleExtent([1, 1])
.on("zoom", pan);
var loadedPage = 1; // begin with one page of data loaded
var nextPage = 2; // next page will be page 2
var panX = 0;
function pan()
{
if (d3.event)
{
panX = d3.event ? d3.event.translate[0] : 0;
// is there a better way to determine …Run Code Online (Sandbox Code Playgroud) <ItemTemplate>
<tr>
<asp:LinkButton ID="btnID" runat="server"
ToolTip='The calculated IDs are: ' OnCommand="showIds"
CommandArgument='<%# Convert.ToInt32(Eval("Year")) + "," +
Convert.ToInt32(Eval("Month")) %>'>
<%# Convert.ToInt32(Eval("Count")) - Convert.ToInt32(Eval("LittleCount"))%>
</asp:LinkButton>
</tr>
</ItemTemplate>
Run Code Online (Sandbox Code Playgroud)
您可以注意到工具提示文本是静态的.在后面的代码中,每次单击上面的按钮(protected void showIds(object sender, CommandEventArgs e) { .... })包含时,我会计算并得到一些整数(ID) List<ExpressionListDictionary>.(asp:LinkButton包含在asp:ListView中)
我想要做的是将工具提示更改为动态工具提示,包含所有已获取的ID作为链接.(像这样的东西:http://jsfiddle.net/IrvinDominin/jLkcs/5/ - 但在我的情况下,我首先需要点击按钮来计算ID,之后我需要从代码中更改工具提示文本因为它需要显示相应的ID,如果可能的话,作为链接)
我怎样才能做到这一点?
我有这个领域:
public decimal Price { get; set; } 在数据库中它是十进制的(7,2).
视图:
@Html.EditorFor(model => model.Price,
new { htmlAttributes = new { @class = "form-control" } })
Run Code Online (Sandbox Code Playgroud)
如果我用逗号放一个值,MVC默认验证不接受,说:"The field must be a number".(我尝试使用正则表达式,但没办法)
例如: 5,00, 55,00 or 555,00
这个:
public DateTime date { get;set; }
Run Code Online (Sandbox Code Playgroud)
视图:
@Html.EditorFor(model => model.Date,
new { htmlAttributes = new { @class = "form-control" } })
Run Code Online (Sandbox Code Playgroud)
MVC默认验证不接受格式的日期dd/mm/yyyy,仅在mm/dd/yyyy.
例如: 13/02/2015, 15/06/2013, 25/08/2012
是全球化还是什么?我怎么解决这个问题?
我们通过 IIS 7.0 发布了一个文件夹,如下所示,并在其中放置一些文件
https://www.example.net/mydocs
Run Code Online (Sandbox Code Playgroud)
如果我们通过浏览器访问如下文件,我们可以看到它
https://www.example.net/mydocs/client.xml
https://www.example.net/mydocs/log.jpg
Run Code Online (Sandbox Code Playgroud)
等等..
现在我们需要编写一个 pgm 来下载和上传文件到这个文件夹,我们编码如下
WebClient webClient = new WebClient();
string webAddress = null;
try
{
webAddress = @"https://www.example.net/mydocs";
webClient.UseDefaultCredentials = true;
webClient.Credentials = CredentialCache.DefaultCredentials;
WebRequest serverRequest = WebRequest.Create(webAddress);
WebResponse serverResponse;
serverResponse = serverRequest.GetResponse();
serverResponse.Close();
webClient.UploadFile(webAddress + @"1.xml", "PUT", @"C:\d\1.xml");
webClient.Dispose();
webClient = null;
}
catch (Exception error)
{
MessageBox.Show(error.Message);
}
Run Code Online (Sandbox Code Playgroud)
但它抛出并出错 serverResponse = serverRequest.GetResponse();
错误是远程服务器返回错误:(403) Forbidden。
此外,如果我们尝试访问
https://www.example.net/mydocs
Run Code Online (Sandbox Code Playgroud)
通过浏览器我们收到错误
403 - 禁止:访问被拒绝。您无权使用您提供的凭据查看此目录或页面。访问通过 iis 发布的文件夹时
当我尝试替换为时null,我收到以下错误消息zero。
PIVOT 运算符中指定的列名“jan”与 PIVOT 参数中的现有列名冲突。
查询如下:
select * from(select isnull(jan,0),isnull(feb,0),sum(data) as amount )as p
pivot(
sum(amount) for month in(jan,feb)) as piv
Run Code Online (Sandbox Code Playgroud) 我有一个像下面的骨架
@using (Html.BeginForm("Preapprove", "Preapproval", FormMethod.Post, new { name = "form1", id = "form1", enctype = "multipart/form-data", @class = "form-horizontal" }))
{
......
<input name="submit" type="button" value="Submit" id="Sub" class="btn btn-success" style="margin-left:950px" />
}
Run Code Online (Sandbox Code Playgroud)
并在jquery我提交此表单上的点击甚至按钮ID Sub
$(document).ready(function () {
$('#Sub').click(function (e) {
var error_flag = 0;
if (d_row_count == 1) {
error_flag = 1;
}
else if (d_row_count > 1) {
if (code == null || code.trim() == '') {
error_flag = 1;
}
else if (s_row_count == 1) {
error_flag = …Run Code Online (Sandbox Code Playgroud) 我的页面中有一个复选框,如下所示:
<asp:CheckBox ID="chkPayerCB"
runat="server"
Text="Payer Core Banking details"
TextAlign="Right"/>
Run Code Online (Sandbox Code Playgroud)
我需要在页面的Page Load事件上禁用它.我在后面的代码中编写了以下代码:
chkPayerCB.Enabled = false;
Run Code Online (Sandbox Code Playgroud)
虽然复选框已禁用但在点击它时仍会检查片刻,然后取消选中.虽然它解决了我的目的,但我不想不惜任何代价进行检查.
我正在使用VS 2008专业版(v 9.0.2).请任何人指导我这个.
我是甲骨文的新手,我正面临着麻烦impdp.我有一个生产服务器,我已经创建了一个新的服务器用于测试目的,所以我安装了centos,oracle并创建了数据库"sire".现在,我使用以下命令从生产服务器进行转储:
expdp system/password@sire full=Y
directory=pump_dir dumpfile=sire_dump.dmp logfile=sire.log
Run Code Online (Sandbox Code Playgroud)
我来到新服务器,我执行impdp:
impdp system/password@sire full=Y
directory=pump_directorio dumpfile=sire_dump.dmp logfile=sire_imp.log
Run Code Online (Sandbox Code Playgroud)
它开始进行导入,但后来我收到错误,例如:
"用户vberrios不存在".还有错误因为它找不到一些模式和表空间.
我的问题是:不应该impdp full=Y导入所有用户和模式?我已经读过我必须在目标服务器中创建用户,但我在数据库中有大约300个用户.如何在空服务器中执行完全导入.我只想导入完整的数据库和用户以及所有对象.