小编Con*_*tin的帖子

如何在MATLAB中从缺少值的数据集中识别最佳子样本

我想确定一个大数据集的最大可能的连续子样本.我的数据集包含大约15,000个金融时间序列,最长可达360个周期.我已经将数据作为360乘15,000数值矩阵导入MATLAB.

在此输入图像描述

由于某些财务数据在整个期间都不可用,因此该矩阵包含大量NaN.在图示中,NaN条目以深蓝色显示,非NaN条目以浅蓝色显示.正是这些浅蓝色非NaN条目我想要理想地组合成一个最佳子样本.

我想找到我的矩阵中包含的最大可能的连续数据块,同时确保我的矩阵包含足够数量的句点.

在第一步中,我想按照每列中非NaN条目的数量从左到右按降序排序我的矩阵,也就是说,我想按输入获得的向量进行排序sum(~isnan(data),1).

在第二步中,我想找到我的数据矩阵的子数组,该子数组沿第一维度至少有72个条目,否则尽可能大,以条目总数来衡量.

实现这个的最佳方法是什么?

matlab

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

如何使用nbconvert作为git textconv驱动程序来启用Jupyter笔记本的有效版本控制

我正在尝试做什么以及它与类似问题的区别

我想使用Git版本控制Jupyter笔记本.不幸的是,默认情况下,Git和Jupyter笔记本电脑不能很好地播放.一个.ipynb文件是一个.json含有不仅Python代码本身,而且还大量的元数据(例如,小区执行计数)和单元输出的文件.

大多数现有解决方案(例如,在版本控制下使用IPython笔记本)依赖于从笔记本中删除输出和元数据.这个(i).json在进行差异时仍然保持文件结构,这是一个难以阅读,并且(ii)意味着不能使用诸如Github上的输出显示之类的功能,因为输出在提交之前被删除.

我的想法如下:每当我运行时git diff,Git会自动使用jupyter nbconvert --to python filename.ipynb从我的*.ipynb源文件转换为*.py普通的python文件.然后它应该只检测影响代码本身的更改(不是执行计数和输出,因为它们被删除nbconvert)而不实际删除它们,它应该使我的差异比未转换的.ipynb文件更可读.我不希望.py永久存储该文件的版本; 它应该只用于git diff.我的理解是,这应该可以通过简单地指定nbconvert[diff] textconv驱动程序,但我无法让它工作.

到目前为止我已经完成的步骤

我创建了一个名为文件ipynb2py/usr/local/bin包含

#!/bin/bash
jupyter nbconvert --to python $1
Run Code Online (Sandbox Code Playgroud)

我已将以下内容添加到我的.gitconfig文件中

[diff "ipynb"]
    textconv = ipynb2py
Run Code Online (Sandbox Code Playgroud)

以及我的.gitattributes文件

*.ipynb diff=ipynb
Run Code Online (Sandbox Code Playgroud)

ipynbtextconv驱动程序分配给该.ipynb格式的所有文件.

现在,我希望git diff自动执行一个转换(我知道这会慢慢减速,但值得为VCing笔记本提供一个可行的选项)每次运行它然后显示一个很好的可读差异,只基于笔记本状态之间的差异转换后.

当我这样做时git diff,它首先说 …

python git diff jupyter-notebook

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

尽管遵循安装说明,但Beaker未能找到Python和Julia安装

我最近安装了Beaker Notebook但却无法启动它.

我有一个现有的Python安装,我使用Anaconda安装(实际上是Beaker推荐的).我已编辑beaker.pref.json指向我的安装(见下文),但它不会启动.Jupyter Notebook和其他Python实现工作正常,所以我知道我的安装完好无损.我beaker.pref.json按照这些说明看起来像这样:

{
  "autocomplete-parameters" : "true",
  "pref-format" : "1",
  "allow-anonymous-usage-tracking" : false,
  "languages" : {
    "IPython" : {
      "path" : "/Users/user/anaconda/bin"
    },
    "Python3" : {
      "path" : "/Users/user/anaconda/bin"
    },
    "Julia" : {
      "path" : "/Applications/Julia-0.6.app/Contents/Resources/julia/bin"
    }
  },
  "edit-mode" : "default"
}
Run Code Online (Sandbox Code Playgroud)

which ipython 回报 /Users/user/anaconda/bin/ipython

which python3 回报 /Users/user/anaconda/bin/python3

以下是错误消息的样子:

在此输入图像描述

我似乎无法弄清楚我做错了什么.任何帮助将不胜感激!

编辑: Jupyter笔记本适用于Python和Julia一样,所以我认为这些安装本身没有任何问题.

编辑:使用Anaconda安装Python可以解决Python的问题.然而,对朱莉娅来说,这似乎并不那么简单.尽管将Beaker指向Julia可执行文件的位置,但它无法启动内核.

python json python-3.x beaker-notebook

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

Weasyprint字体问题导致所有字符被框替换

我已经安装了weasyprint使用pip install weasyprint,根据我的理解,应该安装必要的依赖项.

不知何故,weasyprint生成的PDF输出不包含任何字体,所有字符都被框替换.

打开文档时,我可以看到没有嵌入字体.我还可以通过进入python -m weasyprint.navigator终端并访问其中一个示例站点来重现该问题.下面是我的weasyprint安装呈现的维基百科主页.

使用weasyprint呈现的维基百科主页

什么可能导致这个问题,我怎么能解决它?

html pdf weasyprint

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

如何在Julia中使用PyCall将Python输出转换为Julia DataFrame

我想从quandlJulia中检索一些数据并对其进行分析.遗憾的是,还没有正式的API(尚未).我知道这个解决方案,但它的功能仍然非常有限,并且不遵循与原始Python API相同的语法.

我认为使用PyCallJulia中的官方Python API来检索数据是明智之举.这确实产生了输出,但我不知道如何将其转换为我能够在Julia中使用的格式(理想情况下是a DataFrame).

我尝试了以下内容.

using PyCall, DataFrames
@pyimport quandl

data = quandl.get("WIKI/AAPL", returns = "pandas");
Run Code Online (Sandbox Code Playgroud)

Julia将此输出转换为a Dict{Any,Any}.当使用returns = "numpy"而不是returns = "pandas",我最终得到一个PyObject rec.array.

我怎样才能data成为朱莉娅DataFrame因为quandl.jl要退呢?请注意,这quandl.jl不是我的选择,因为它不支持自动检索多个资产,并且缺少其他一些功能,因此我必须使用Python API.

谢谢你的任何建议!

python dataframe julia quandl

5
推荐指数
2
解决办法
892
查看次数

自动删除裁剪区域之外的所有 PDF 内容

对于一组讲座幻灯片,我从 PDF 文件中提取了几个矢量插图。我通过突出显示 Preview.app 中的相关区域、复制并从剪贴板打开一个新文件来完成此操作。

\n\n

尽管我注意到文件有点大,但这些数字看起来很好。当我在 Illustrator 中打开它们时,我可以看到屏幕截图 \xe2\x80\x93 中描述的内容,即所有页面内容仍然存在,只是隐藏起来,因为它位于裁剪区域之外。

\n\n

这两个窗口显示相同的文件

\n\n

现在我可以简单地删除 Illustrator 中除相关图形之外的所有内容,但我更愿意自动化该过程,因为我有大量图形。

\n\n

如何自动化此过程,以便丢弃裁剪区域之外的所有内容,并将其内部的所有内容保留为矢量图像?

\n\n

在此输入图像描述

\n

pdf

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

如何在Github Pages上设置子子域

目前,我有我的博客托管在Github上的页面,并使用类型的自定义域很mydomain.toplevelwww.mydomain.toplevel.

我如何设置类型的子子域two.words.mydomain.toplevel,并www.two.words.mydomain.toplevel和它们指向一个特定的目录?

我已经找到了关于如何设置单个子域的足够信息,但我发现的任何内容似乎都没有以简单的方式转移到子子域.

我很欣赏任何指针.请注意,我仍希望能够通过其当前网址访问我的博客.我对这些东西不是很熟悉,我使用Github.com图形界面设置了我当前的URL,该界面不包含子域的任何选项(更不用说子子域).

subdomain

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

如何根据视口大小更改条纹卡元素的格式

我正在构建一个使用 stripe 进行支付的自适应网站,包括 Stripe card-element,它用于接受信用卡付款。

当然,随着视口大小的变化,段落字体大小也会发生变化。card-element对于我正在创建的Stripe 来说也是如此var card = elements.create('card')。Stripe 卡元素是一个 iframe,因为支付数据直接发送到 Stripe 的服务器,而不是我的服务器,这意味着使用相对字体大小em不起作用,媒体查询也不起作用。当然,因为这个 iframe 根本不关心我的 CSS,所以stripe.elements.create当我实例化卡片元素时,当前会传递所有格式指令。

如何使 Stripe 元素的样式属性(在本例中为字体大小)自适应?

我能想到的唯一方法是在 JS 中检查视口大小,并在视口大小发生变化时重新实例化元素;但这看起来很丑陋而且矫枉过正。

var card = stripe.elements.create('card', {
  hidePostalCode: true,
  style: {
    base: {
      fontSize: "1em"
    }
  }
});

card.mount('#card-element');
Run Code Online (Sandbox Code Playgroud)
@media only screen and (min-width: 992px) {
  p {
    font-size: 9pt;
    }
  #card-element {
    font-size: 9pt; // Does not work.
    }
}

@media only screen and (min-width: 1200px) {
  p { …
Run Code Online (Sandbox Code Playgroud)

javascript css iframe stripe-payments

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