小编Sam*_*yan的帖子

如何使用指定的时区强制python print numpy datetime64?

我希望按指定的时区看到numpy datetime64对象.

>>> import numpy as np
>>> np.datetime64('2013-03-10T01:30:54')
numpy.datetime64('2013-03-10T01:30:54+0400')
>>> np.datetime64('2013-03-10T01:30:54+0300')
numpy.datetime64('2013-03-10T02:30:54+0400')
Run Code Online (Sandbox Code Playgroud)

Python打印日期时间对象总是在UTC + 0400(它是我的本地时区),即使我指定另一个时区>>> np.datetime64('2013-03-10T01:30:54+0300').有没有办法按UTC + 0000时区强制python打印?

我正在使用numpy 1.8.1.

python timezone datetime numpy datetime64

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

是否可以在编译时计算数字因子,但没有枚举

我想在编译时计算阶乘.我找到了解决问题的方法,但我想知道是否有任何其他解决方案可以解决这个问题而不使用enums.这里使用enums 的解决方案.

#include <iostream>
template <int n>
struct fact
{
    enum{value = n*fact<n-1>::value};
};

template<>
struct fact<1>
{
    enum{value = 1};
};

int main()
{
    std::cout << fact<10>::value;
}
Run Code Online (Sandbox Code Playgroud)

如果没有其他解决方案,请说明为什么enum必须这样做.

c++ templates

8
推荐指数
3
解决办法
423
查看次数

如何从C代码中获取R列表列名

我需要编写一个C/C++函数来检索R列表列名.

从RI想做以下事情.

> dyn.load("R_list.dll")
> x = list(param1="value1", param2="value2", param3="value3")
> .Call("func", x)
Run Code Online (Sandbox Code Playgroud)

并作为输出我想看到"param1" "param2" "param3"names(x)功能与R不

> names(x) [1] "param1" "param2" "param3"

在我的cpp文件中,我有以下内容

#include <R.h>
#include <Rinternals.h>
#include <Rdefines.h>

extern "C" __declspec( dllexport ) SEXP func(SEXP list)
{
    try
    {
        if (isNewList(list))
        {
            int n = length(list);
            printf("%d\n", n);
            for (int i=0; i<n; ++i)
                printf("%s\n", CHAR(STRING_ELT(VECTOR_ELT(list, i), 0)));
        }
        else
        {
            throw std::exception("'list' variable must be a list!");
        }       
    }
    catch(const std::exception& ex)
    {
        printf("Exception was …
Run Code Online (Sandbox Code Playgroud)

c++ r

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

如何从命令行为setup.py指定多个include目录?

在这里,我找到了如何编写setup.py用于为python编译我自己的C/C++模块的文件,但是我不能从命令行指定多个包含目录.

请告诉我语法如何从命令行指定目录列表setup.py.

python setup.py

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

有没有办法从C将POSIXct对象返回给R?

我想在C/C++中创建一个datetime对象的向量,然后将它们返回给R.在POSIXct类的文档中,写入它自1970-01-01以来保持秒数作为数值的向量,所以我想那里应该是一种在C中从double转换为POSIXct的方法.

我有这个C代码,并希望返回POSIXct日期而不是REAL数字.

SEXP func()
{
    SEXP dates;
    PROTECT(dates = allocVector(REALSXP, 2));
    REAL(dates)[0] = 1402329599.12456;
    REAL(dates)[1] = 1402329600.85404;
    UNPROTECT(1);
    return dates;
}
Run Code Online (Sandbox Code Playgroud)

c c++ r

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

标签 统计

c++ ×3

python ×2

r ×2

c ×1

datetime ×1

datetime64 ×1

numpy ×1

setup.py ×1

templates ×1

timezone ×1