小编jos*_*hlk的帖子

使用Mayavi/Python从3D数据绘制轮廓图

我想使用Mayavi以与本页第三个图形完全相同的方式绘制三维等高线图(氢电子云模型):

http://www.sethanil.com/python-for-reseach/5

我有一组数据点,我使用自己的模型创建,我想使用它.数据点存储在一个多维的numpy数组中,如下所示:

XYZV = [[1, 2, 3, 4],
        [6, 7, 8, 9],
        ...
        [4, 5, 6, 7]]
Run Code Online (Sandbox Code Playgroud)

数据点不是在XYZ空间中均匀分布,也不是以任何特定顺序存储.我认为这个例子使用了一个meshgrid来生成数据点 - 我已经看了这个但完全不理解它.任何帮助将非常感激?

H http://www.sethanil.com/_/rsrc/1267943775903/python-for-reseach/5/Article5-fig3.png

python plot numpy contour mayavi

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

Hive:对指定组进行求和(HiveQL)

我有一张桌子:

key    product_code    cost
1      UK              20
1      US              10
1      EU              5
2      UK              3
2      EU              6
Run Code Online (Sandbox Code Playgroud)

我想找到每组"钥匙"的所有产品的总和,并附加到每一行.例如,对于key = 1,找到所有产品的成本总和(20 + 10 + 5 = 35),然后将结果附加到对应于key = 1的所有行.最终结果:

key    product_code    cost     total_costs
1      UK              20       35
1      US              10       35
1      EU              5        35
2      UK              3        9
2      EU              6        9
Run Code Online (Sandbox Code Playgroud)

我更愿意在不使用子连接的情况下这样做,因为这样效率很低.我最好的想法是将该over函数与sum函数结合使用,但我无法使其工作.我最好的尝试:

SELECT key, product_code, sum(costs) over(PARTITION BY key)
FROM test
GROUP BY key, product_code;
Run Code Online (Sandbox Code Playgroud)

我看了一下这些文档但有那么神秘,我不知道如何解决这个问题.我使用Hive v0.12.0,HDP v2.0.6,HortonWorks Hadoop发行版.

hadoop hive hiveql hortonworks-data-platform

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

PySpark:执行程序映射分区功能中未释放numpy内存(内存泄漏)

我有以下最小的工作示例:

from pyspark import SparkContext
from pyspark.sql import SQLContext
import numpy as np

sc = SparkContext()
sqlContext = SQLContext(sc)

# Create dummy pySpark DataFrame with 1e5 rows and 16 partitions
df = sqlContext.range(0, int(1e5), numPartitions=16)

def toy_example(rdd):

    # Read in pySpark DataFrame partition
    data = list(rdd)

    # Generate random data using Numpy
    rand_data = np.random.random(int(1e7))

    # Apply the `int` function to each element of `rand_data`
    for i in range(len(rand_data)):
        e = rand_data[i]
        int(e)

    # Return a single `0` value
    return …
Run Code Online (Sandbox Code Playgroud)

python memory-leaks numpy apache-spark pyspark

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

Mongoexport错误解析查询

我试图做一个mongoexport到CSV但只选择带有查询的某些记录.这是我的命令(windows 7 cmd):

mongoexport --host foo.com --port 27017 --username bar -p --db foo --csv --fields col1,col2,col3 --collection bar --out dump_q.csv --query '{"recent":"yes"}'
Run Code Online (Sandbox Code Playgroud)

但是输入密码后,我收到一个错误:

assertion: 16619 code FailedToParse: FailedToParse: Expecting '{': offset:0
Run Code Online (Sandbox Code Playgroud)

该命令在没有查询参数的情况下工作正常,但我无法弄清楚查询有什么问题:

--query '{"recent":"yes"}'
Run Code Online (Sandbox Code Playgroud)

任何帮助非常感谢


答案摘要:

  1. 确保使用双引号括起查询和单引号以包含字符串,例如

    --query"{'recent':'yes'}"

  2. 还要确保查询中没有空格,否则命令提示符会将其解析为另一个参数.所以没有:

    --query"{'recent':'yes'}"(注意中间的空格)

  3. 包含嵌套字段的查询不起作用,例如:

    --query"{'folder.recent':'yes'}"

mongodb mongoexport

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

Perl需要花费很长时间来评估:密钥%hash /遍历大散列

在Perl脚本中,我构建了一个大的哈希值(大约10 GB),大约需要40分钟,大约有1亿个密钥.接下来我想循环遍历哈希的键,如下所示:

foreach my $key (keys %hash) {
Run Code Online (Sandbox Code Playgroud)

然而,这条线需要1小时20分钟来评估!一旦进入for循环,代码就会快速运行整个哈希.

为什么进入forloop需要这么长时间?我怎样才能加快这个过程?

perl hash hashmap

4
推荐指数
2
解决办法
339
查看次数

所有地址都转到Python Pyramid中的单个页面(全部路径到单个视图)

我正在尝试更改Pyramid hello world示例,以便对Pyramid服务器的任何请求都服务于同一页面.即所有路线指向同一视图.这是iv到目前为止所得到的:

from wsgiref.simple_server import make_server
from pyramid.config import Configurator
from pyramid.response import Response

def hello_world(request):
    return Response('Hello %(name)s!' % request.matchdict)

if __name__ == '__main__':
    config = Configurator()
    config.add_route('hello', '/*')
    config.add_view(hello_world, route_name='hello')
    app = config.make_wsgi_app()
    server = make_server('0.0.0.0', 8080, app)
    server.serve_forever()
Run Code Online (Sandbox Code Playgroud)

所有iv完成是改变行(来自hello world示例):

    config.add_route('hello', '/hello/{name}')
Run Code Online (Sandbox Code Playgroud)

至:

    config.add_route('hello', '/*')
Run Code Online (Sandbox Code Playgroud)

所以我希望这条路线成为"全能".我尝试了各种变化,无法让它工作.有没有人有任何想法?

谢谢你的补充

python pyramid

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

将天数添加到日期/日期时间(Pandas/Numpy)

在 Pandas 中,我想在日期/日期时间(两列)中添加天数。

例子:

dates = pd.Series(pd.date_range("20180101 00:00", "20180104 00:00"))

0   2018-01-01
1   2018-01-02
2   2018-01-03
3   2018-01-04
dtype: datetime64[ns]
Run Code Online (Sandbox Code Playgroud)

days = pd.Series(np.arange(4)).astype('float')

0    0.0
1    1.0
2    2.0
3    3.0
dtype: float64
Run Code Online (Sandbox Code Playgroud)

我尝试过的(以及我得到的相关错误):

dates + days
Run Code Online (Sandbox Code Playgroud)

类型错误:无法对没有类型为 datetime64[ns] 或 timedelta 的系列/ndarray 的 rhs 的系列进行操作

dates + days.astype('int')
Run Code Online (Sandbox Code Playgroud)

类型错误:日期时间/时间增量操作的类型不兼容 [__add__]

dates + pd.DateOffset(days=days)
Run Code Online (Sandbox Code Playgroud)

类型错误:DatetimeIndex 无法执行操作 +

dates + np.timedelta64(days.values)
Run Code Online (Sandbox Code Playgroud)

ValueError:无法将对象转换为 NumPy timedelta

dates + pd.offsets.Day(days)
Run Code Online (Sandbox Code Playgroud)

类型错误:无法将系列转换为

dates + pd.datetools.timedelta(days=days)
Run Code Online (Sandbox Code Playgroud)

类型错误:不支持 timedelta 天组件的类型:系列

python datetime numpy date pandas

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

通过引用传递参数时模板的显式实例化

如何使用按引用传递的参数显式实例化模板函数?

我有一个简单的模板化函数,它接受任何类型并将其转换为字符串:

template <typename T>
string to_string (const T &e) {
    std::stringstream ss;
    string str;
    ss << e;
    ss >> str;
    return str;
}
Run Code Online (Sandbox Code Playgroud)

请注意,argument 参数e是通过引用传递的。

我现在想显式实例化不同数据类型的函数,例如:

template string to_string<string> (string);
template string to_string<double> (double);
Run Code Online (Sandbox Code Playgroud)

但是,编译器抱怨(由于显式实例化):

错误:“to_string”的显式实例化不引用函数模板、变量模板、成员函数、成员类或静态数据成员

模板字符串 to_string (string);

如果我将模板化函数的参数从const T &eto更改为const T e- 即删除引用 - 它可以编译并正常工作。

如何使用按引用传递的参数显式实例化模板函数?

工具链:

  • C++14
  • clang 版本 11.0.0 (MacOS)

c++ templates clang pass-by-reference c++14

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