小编Ben*_*n.W的帖子

有上限和下限的cumsum?

我想找到一种矢量化方法来计算矢量的累积和,但是有上限和下限.

在我的例子中,输入只包含1和-1.您可以在答案中使用此假设.当然,也欢迎更通用的解决方案.

例如:

x     = [1 1 1 1 -1 -1 -1 -1 -1 -1];
upper = 3;
lower = 0;
s     = cumsum(x)                    %// Ordinary cumsum.
s =
     1     2     3     4     3     2     1     0    -1    -2

y     = cumsumlim(x, upper, lower)   %// Cumsum with limits.
y =
     1     2     3     3     2     1     0     0     0     0
                 ^                       ^
                 |                       |
            upper limit             lower limit
Run Code Online (Sandbox Code Playgroud)

当累积总和达到上限(在第3个元素)时,它将不再增加.同样,当累积总和达到下限(在第7个元素)时,它将不再减少.for循环版本将是这样的:

function y = cumsumlim(x, upper, lower)

y …
Run Code Online (Sandbox Code Playgroud)

matlab vectorization cumsum

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

如何恢复由于不正确的 .gitattributes 而损坏的 PNG 文件?

我添加 & 提交 & 推送了几个 PNG 文件到我的 git repo 中,但不幸的是,我有一个不正确的 .gitattributes 文件,如下所示:

* text
# no settings for PNG files
Run Code Online (Sandbox Code Playgroud)

PNG 文件被 git 视为文本文件。现在我无法再打开它们,而且我也丢失了它们的原始副本。有什么办法可以恢复它们吗?谢谢!


更新.gitattributes添加 PNG 文件时已经在 repo 中。这意味着我无法在提交历史记录中找到PNG 文件的良好状态。所有提交都是在 Windows 上进行的。

git png gitattributes

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

标签 统计

cumsum ×1

git ×1

gitattributes ×1

matlab ×1

png ×1

vectorization ×1