小编cls*_*udt的帖子

诊断C++程序中的浮点溢出

我有一种情况,就是一些数值结果(包括浮点运算与doublefloat)成为不正确的大尺寸输入,而不是小的.

一般来说,我想知道哪些工具可用于诊断数值溢出和有问题的精度损失等条件.

换句话说:是否存在一个抱怨溢出等的工具,就像valgrind抱怨内存错误一样?

c++ floating-point double numeric overflow

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

使用srand设置随机种子是现代C++吗?

对于使用的代码std::random_shuffle,我需要设置一个随机种子,以便在每个程序运行中产生的伪随机序列不同.

这里代码示例调用

srand ( unsigned ( time (NULL) ) );
Run Code Online (Sandbox Code Playgroud)

这需要

#include <ctime>
#include <cstdlib>
Run Code Online (Sandbox Code Playgroud)

我想知道:由于C++ 11包含伪随机数生成的主要更新,这仍然是最新的吗?我应该使用什么来设置随机种子std::random_shuffle

c++ random srand c++11

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

pandas.factorize在整个数据框架上

pandas.factorize 将输入值编码为枚举类型或分类变量.

但是,如何轻松高效地转换数据框的多列?反向映射步骤怎么样?

示例:此数据框包含具有字符串值的列,例如"类型2",我想将其转换为数值 - 并可能稍后将其转换回来.

在此输入图像描述

python machine-learning dataframe pandas

15
推荐指数
2
解决办法
2万
查看次数

pandas.DatetimeIndex频率为None,无法设置

我从"日期"列创建了一个DatetimeIndex:

sales.index = pd.DatetimeIndex(sales["date"])
Run Code Online (Sandbox Code Playgroud)

现在索引如下:

DatetimeIndex(['2003-01-02', '2003-01-03', '2003-01-04', '2003-01-06',
                   '2003-01-07', '2003-01-08', '2003-01-09', '2003-01-10',
                   '2003-01-11', '2003-01-13',
                   ...
                   '2016-07-22', '2016-07-23', '2016-07-24', '2016-07-25',
                   '2016-07-26', '2016-07-27', '2016-07-28', '2016-07-29',
                   '2016-07-30', '2016-07-31'],
                  dtype='datetime64[ns]', name='date', length=4393, freq=None)
Run Code Online (Sandbox Code Playgroud)

如您所见,freq属性为None.我怀疑路上的错误是由失踪引起的freq.但是,如果我尝试明确设置频率:

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-148-30857144de81> in <module>()
      1 #### DEBUG
----> 2 sales_train = disentangle(df_train)
      3 sales_holdout = disentangle(df_holdout)
      4 result = sarima_fit_predict(sales_train.loc[5002, 9990]["amount_sold"], sales_holdout.loc[5002, 9990]["amount_sold"])

<ipython-input-147-08b4c4ecdea3> in disentangle(df_train)
      2     # transform sales table to disentangle sales time series
      3     sales = …
Run Code Online (Sandbox Code Playgroud)

python indexing time-series pandas

14
推荐指数
3
解决办法
7780
查看次数

从 Dash/Flask 应用程序下载动态生成的文件

我试图构建一个 Dash 应用程序的最小示例,它说明了动态生成文件的问题,然后可以通过下载按钮下载该文件。

如果运行此示例,您将看到一个文本区域,可以在其中输入文本。单击“输入”按钮会将文本存储到文件中并为该文件创建一个下载按钮。

在此处输入图片说明

import dash
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output, State

import uuid

stylesheets = [
    "https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.2/css/bulma.min.css", # Bulma
]

# create app
app = dash.Dash(
    __name__,
    external_stylesheets=stylesheets
)


app.layout = html.Div(
    className="section",
    children=[
        dcc.Textarea(
            id="text-area",
            className="textarea",
            placeholder='Enter a value...',
            style={'width': '300px'}
        ),
        html.Button(
            id="enter-button",
            className="button is-large is-outlined",
            children=["enter"]
        ),
        html.Div(
            id="download-area",
            className="block",
            children=[]
        )
    ]
)

def build_download_button(uri):
    """Generates a download button for the resource"""
    button = html.Form(
        action=uri,
        method="get", …
Run Code Online (Sandbox Code Playgroud)

python flask plotly-dash

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

覆盖类的__contains__方法

我需要在Python中模拟枚举,并通过编写类来完成它:

class Spam(Enum):
    k = 3
    EGGS = 0
    HAM = 1
    BAKEDBEANS = 2
Run Code Online (Sandbox Code Playgroud)

现在,我想测试某个常量是否是特定Enum派生类的有效选择,使用以下语法:

if (x in Foo):
    print("seems legit")
Run Code Online (Sandbox Code Playgroud)

因此,我尝试创建一个"Enum"基类,我在其中覆盖这样的__contains__方法:

class Enum:
    """
    Simulates an enum.
    """

    k = 0 # overwrite in subclass with number of constants

    @classmethod
    def __contains__(cls, x):
        """
        Test for valid enum constant x:
            x in Enum
        """
        return (x in range(cls.k))
Run Code Online (Sandbox Code Playgroud)

但是,在in类上使用关键字时(如上例所示),我收到错误:

TypeError: argument of type 'type' is not iterable
Run Code Online (Sandbox Code Playgroud)

为什么?我可以以某种方式获得我想要的语法糖吗?

python python-3.x

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

用D语言测量执行时间

我是D语言的新手,需要测量算法的执行时间.我有什么选择?是否已经有一些内置的解决方案?我在网上找不到任何结论.

performance time d execution-time

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

使用Numpy进行类似MATLAB的数组索引

在MATLAB和Numpy中,数组都可以通过数组索引.但是,行为是不同的.让我通过一个例子解释一下.

MATLAB:

>> A = rand(5,5)

A =

    0.1622    0.6020    0.4505    0.8258    0.1067
    0.7943    0.2630    0.0838    0.5383    0.9619
    0.3112    0.6541    0.2290    0.9961    0.0046
    0.5285    0.6892    0.9133    0.0782    0.7749
    0.1656    0.7482    0.1524    0.4427    0.8173

>> A([1,3,5],[1,3,5])

ans =

    0.1622    0.4505    0.1067
    0.3112    0.2290    0.0046
    0.1656    0.1524    0.8173
Run Code Online (Sandbox Code Playgroud)

NumPy的:

In [2]: A = arange(25).reshape((5,5))

In [3]: A
Out[3]: 
array([[ 0,  1,  2,  3,  4],
       [ 5,  6,  7,  8,  9],
       [10, 11, 12, 13, 14],
       [15, 16, 17, 18, 19],
       [20, 21, …
Run Code Online (Sandbox Code Playgroud)

matlab numpy python-3.x

10
推荐指数
2
解决办法
4883
查看次数

如何处理降价中的特殊字符?

我刚刚发现了Markdown和MultiMarkdown,到目前为止我很喜欢它.但是,在导出到HTML时,特殊字符未正确转义,并在浏览器中显示为垃圾.

例:

How does Markdown handle special characters?
============================================

For example, German is full of ä, ö, ü and ß.
Run Code Online (Sandbox Code Playgroud)

转换为

<h1 id="howdoesmarkdownhandlespecialcharacters">How does Markdown handle special characters?</h1>

<p>For example, German is full of ä, ö, ü and ß.</p>
Run Code Online (Sandbox Code Playgroud)

因为我必须用德语写很多东西,所以不能选择手工输入转义序列.如何使用正确转义的特殊字符获取HTML输出?

markdown escaping diacritics multimarkdown

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

使用Cython和C++的项目组织

我想为我的C++项目提供Python接口.从技术上讲,我决定使用Cython来包装C++代码.随着时间的推移,整个项目将成为一个Python扩展模块,但首先,这是高度实验性的.渐渐地,C++类需要暴露给Python.

我的问题是如何最好地组织文件和构建配置,以便Cython生成的和人工编写的C++代码不会混合,并且Python扩展模块与其他目标完全分开构建.

我想象一个源文件的目录结构,以及Cython的一些构建目录.

Project/
    src/
        *.h
        *.cpp
    cython/
        Project.pyx
        setup.py
Run Code Online (Sandbox Code Playgroud)

c++ python build cython

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