小编Ale*_*gur的帖子

在图像上执行反射中心垫

这个来自活跃的 Kaggle 比赛的论坛帖子提到了作者称之为“反射中心垫”的东西。基本上,这是一种变换,它采用图像的边缘并将它们向外反射,从而在图像的边缘产生镜像,作者稍微展示了这一点,但显着提高了模型性能。

作为参考,这是他们发布的展示这种技术的图片:

我的问题是双重的:

  1. 此转换是否有规范名称?“反光中心垫”听起来很非官方。
  2. 在代码中表达这种转换的简单方法是什么,也许使用numpy和类似的东西skimage

python numpy image-processing linear-algebra scikit-image

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

如何在C中execvp ls*.txt

我有问题执行*.txt通配符,并且在C中读取此线程 - exec()任何命令 - 表明由于"全局"问题很难.有没有简单的方法来解决这个问题?

这是我正在尝试做的事情:

char * array[] = {"ls", "*.txt", (char *) NULL };
execvp("ls", array);
Run Code Online (Sandbox Code Playgroud)

c shell ls wildcard execvp

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

是否可以更改 imshow matplotlib 可视化的宽度?

我想制作一个使用imshowin 的图形matplotlib,我可以有效地设置宽度和高度。我以为我可以figsize这样做,但它的表现就像我想象的那样。

例如,使用以下 MWE:

import matplotlib.pyplot as plt
import numpy as np

N = 100
width = 20
height = 20
Z = np.random.random((width,height))

G = np.zeros((width,height,3))

# Here we set the RGB for each pixel
G[Z>0.5] = [1,1,1]
G[Z<0.5] = [0,0,0]

plt.figure(figsize = (2, 5))
plt.imshow(G,interpolation='nearest')
plt.grid(False)
plt.show()
Run Code Online (Sandbox Code Playgroud)

这是我得到的:

在此输入图像描述

例如,如果我更改figsize = (2, 5)figsize = (2, 2),比例不会改变!

在尝试了几个不同的值之后,我认为这是因为图形被渲染为一个盒子而不是一个矩形:无论我设置什么,figsize各个矩阵条目都是一个常量盒子。

是否有一个命令可以用来告诉 matplotlib 扩展到 例如800x400px

python matplotlib

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

向纯 React 组件添加事件处理程序?

我有一个 React 组件,上面有一个 Redux 容器,我想在其上处理滚动事件:

import React from 'react';

export default class Visualization extends React.Component {
    render() {
        function handleScroll(e) {
            if (e.deltaY > 0) {
                console.log("YO");
                this.props.stepForward();  // stepForward inherited from above
            } else {
                console.log("DAWG");
                this.props.stepBack();  // stepBack inherited from above
            }
        }

        return <div onWheel={handleScroll}>"HELLO WORLD"</div>;
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,此代码将引发错误,因为thisthis.props.stepForward()最终作为事件的一部分被调用。

React 教程通过添加构造函数并在其中调用来处理这种情况this.handleClick = this.handleClick.bind(this);。或者,等效地:

import React from 'react';

export default class Visualization extends React.Component {
    constructor() {
        super();
        this.handleScroll = this.handleScroll.bind(this); …
Run Code Online (Sandbox Code Playgroud)

javascript components reactjs redux react-redux

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

当 AWS-CLI 在 Python 中作为子进程运行时未指定 AWS 同步参数

我有一个 AWS S3 存储桶,其中填充了按日期参数化的数据。我想使用 AWS CLI(参考)(特别是命令)一次提取一个日期的数据aws s3 sync

以下命令执行我期望的操作:

aws s3 sync s3://my-bucket-1 . --exclude "*" --include "*2018-01-17*" --dryrun

从命令行运行此命令会(dryrun) download为存储桶中包含子字符串的每个文件生成一个2018-01-17.

伟大的!为了简化必要的文件操作,我围绕这个执行器编写了一个小型 CLI 包装器。该包装器采用 Python 编写,并使用该subprocess.run工具来完成其工作。整个操作归结为以下调用:

subprocess.run(['aws', 's3', 'sync', 's3://my-bucket-1', '.', '--exclude', '"*"', '--include', '"*2018-01-17*"', '--dryrun'])
Run Code Online (Sandbox Code Playgroud)

问题是,当我运行此语句时,我会返回(dryrun) download存储桶中的每个文件。也就是说,返回与 01-18、01-19 等存储桶条目相对应的数据。--exclude/规则--include无法应用,结果与我简单运行的结果相同aws s3 sync s3://my-bucket-1 .

为什么会出现这种情况?

python subprocess amazon-s3 aws-cli

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

CMake尝试编译简单测试程序时失败

我正在尝试遵循在本地进行构建pyarrow的文档。具体来说,使用conda说明:

conda create -y -n pyarrow-dev -c conda-forge \
    --file arrow/ci/conda_env_unix.yml \
    --file arrow/ci/conda_env_cpp.yml \
    --file arrow/ci/conda_env_python.yml \
    compilers \
    python=3.7
conda activate pyarrow-dev
export ARROW_HOME=$CONDA_PREFIX
git clone https://github.com/apache/arrow.git
mkdir arrow/cpp/build
pushd arrow/cpp/build
cmake -DCMAKE_INSTALL_PREFIX=$ARROW_HOME \
      -DCMAKE_INSTALL_LIBDIR=lib \
      -DARROW_FLIGHT=ON \
      -DARROW_GANDIVA=ON \
      -DARROW_ORC=ON \
      -DARROW_PARQUET=ON \
      -DARROW_PYTHON=ON \
      -DARROW_PLASMA=ON \
      -DARROW_BUILD_TESTS=ON \
      ..
Run Code Online (Sandbox Code Playgroud)

cmake指令失败,并显示以下错误消息:

-- Building using CMake version: 3.12.3
-- The C compiler identification is Clang 4.0.1
-- The CXX …
Run Code Online (Sandbox Code Playgroud)

c++ xcode cmake apache-arrow pyarrow

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

如何在Python中重新计算几天?

出于我正在制作的Web API查询的目的,我正在尝试格式化由管道("|")分隔的一堆日期,向后计数七天,并将每个日期添加到复合字符串中.我阅读了文档,并将date.today()和datetime.timedelta的组合拼凑在一起.我写的方法:

def someMethod():
    ret = ''
    pythonic_date = datetime.date.today()
    for i in range(0, 8):
        pythonic_date -= datetime.timedelta(days=1)
        ret += "SomePage" + datetime.date.today().strftime("%B" + " ")
        ret += str(pythonic_date.day).lstrip('0')
        ret += ", " + str(pythonic_date.year) + "|"
    ret = ret[0:len(ret) - 1]
    return ret
Run Code Online (Sandbox Code Playgroud)

我希望得到以下输出:

SomePage/June 2,2015 | SomePage/June 1,2015 | SomePage/2015年5月31日| SomePage/2015年5月30日| SomePage/2015年5月29日| SomePage/2015年5月28日| SomePage/2015年5月27日| SomePage/2015年5月26日

相反,我得到以下输出:

SomePage/2015年6月2日| SomePage/2015年6月1日| SomePage/2015年6月31日| SomePage/2015年6月30日| SomePage/June 29,2015 | SomePage/June 28,2015 | SomePage/June 27,2015 | SomePage/2015年6月26日

我看到timedelta在这里使用只是天真地循环日期类对象中的日期字段,而不是在整个日期上操作.我有两个问题:

  1. 为什么这样实现?
  2. 我该怎么办才能得到我想要的东西?

编辑:第二次看,我写的功能甚至无法处理多年之间的移动.说真的,有什么更好的方法呢?日期时间文档(https://docs.python.org/3/library/datetime.html#datetime.timedelta.resolution)非常密集.

python date

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

如何简化样条曲线?

在我正在开发的项目中,我有一个有趣的算法挑战.我有一个排序的坐标点列表,指向街道两侧的建筑物,这些建筑物已经足够放大,如下所示:

在此输入图像描述

我想采取这种曲折并将其平滑以使基础街道线性化.

我可以想到几个解决方案:

  1. 使用六个左右的滚动平均值计算质心,并使用它们.
  2. 样条回归.

是否有更好或最好的方法来解决这个问题?(我使用的是Python 3.5)

algorithm interpolation geospatial smoothing spatial-interpolation

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