小编Eri*_*got的帖子

在matplotlib中包装线的文本框?

是否可以通过Matplotlib在框中显示文本,并自动换行?通过使用pyplot.text(),我只能打印超出窗口边界的多行文本,这很烦人.线条的大小事先不知道...任何想法将不胜感激!

python textbox matplotlib

70
推荐指数
3
解决办法
4万
查看次数

__repr __()函数的最佳输出类型和编码实践?

最近,我有很多的麻烦__repr__(),format()和编码. 输出__repr__()应该编码还是unicode字符串?__repr__()Python中 的结果是否有最佳编码?我想输出的内容确实有非ASCII字符.

我使用Python 2.x,并希望编写可以轻松适应Python 3的代码.程序因此使用

# -*- coding: utf-8 -*-
from __future__ import unicode_literals, print_function  # The 'Hello' literal represents a Unicode object
Run Code Online (Sandbox Code Playgroud)

以下是一些困扰我的其他问题,我正在寻找解决它们的解决方案:

  1. 打印到UTF-8终端应该可以工作(我已经sys.stdout.encoding设置了UTF-8,但最好是其他情况也能正常工作).
  2. 将输出管道输出到文件(以UTF-8编码)应该可以工作(在这种情况下,sys.stdout.encodingNone).
  3. 我的许多__repr__()功能的代码目前有很多return ….encode('utf-8'),而且很重要.有什么强劲和轻松的吗?
  4. 在某些情况下,我甚至有丑陋的野兽return ('<{}>'.format(repr(x).decode('utf-8'))).encode('utf-8'),即对象的表示被解码,放入格式化字符串,然后重新编码.我想避免这种错综复杂的转变.

为了编写__repr__()与这些编码问题相关的简单函数,您建议做什么?

python encoding ascii repr

66
推荐指数
2
解决办法
9538
查看次数

Python中内置的pow()和math.pow()之间的差异?

在两个float参数的情况下,Python的内置pow(x, y)(没有第三个参数)和返回的值返回的结果是否有差异.math.pow()

我问这个问题,因为文件math.pow()暗示pow(x, y)(例如x**y)在本质上是一样的math.pow(x, y):

math.pow(x,y)

返回x上升到幂y.特殊情况尽可能遵循C99标准的附录'F'.特别是,即使x为零或NaN,pow(1.0,x)和pow(x,0.0)也总是返回1.0.如果x和y都是有限的,x是负的,y不是整数,则pow(x,y)是未定义的,并引发ValueError.

在版本2.6中更改:1**nan和nan**0的结果未定义.

注意最后一行:文档暗示行为math.pow()是指数运算符**(因此pow(x, y))的行为.这是官方保证吗?

背景:我的目标是提供一个实现这两个内置的pow()math.pow()对不确定性的数字,在以同样的方式表现与常规的Python花车(相同的数值结果,同样的例外,拐角情况相同的结果,等等).我已经已经实现的东西,工作得很好,但也有一些角落情况下,需要进行处理.

python math

62
推荐指数
3
解决办法
4万
查看次数

任何人都试过neo4j vs titan - 优点和缺点

任何人都可以提供或指出Neo4j和Titan之间的良好比较?我可以看到的一点是规模 - Titan是横向扩展,需要像cassandra这样的基础可扩展数据存储.Neo4j仅适用于HA,并拥有自己的嵌入式数据库.还有其他优点和缺点吗?任何特定的用例.(Titan目前在哪里使用?)

我还有以下链接:http://architects.dzone.com/articles/16-graph-databases-compared,它给出了图形数据库的客观比较,但没有太多关于Neo4j和Titan之间的利弊.

graph neo4j relationships nosql titan

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

标准库中最有用的Python模块?

我正在巴黎大学教授一个研究生水平的Python课程,学生需要被引入标准库.我想与他们讨论一些最重要的标准模块.

你认为哪些模块绝对必须?尽管反应取决于你的域(web编程,科学等)可能会发生变化,我觉得有些模块通常需要:math,sys,re,os,os.path,logging,...也许:collections,struct,...

你会建议我在一个或两个小时的时间内出示什么模块?

python module standard-library

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

Python中的dir(...)和vars(...).keys()之间的区别?

Python dir(…)vars(…).keys()Python 之间有区别吗?

(我希望有区别,因为否则这会破坏"一种方法去做"原则...... :)

python

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

如何将csv文件转换为rdd

我是新来的.我想对CSV记录中的特定数据执行一些操作.

我正在尝试读取CSV文件并将其转换为RDD.我的进一步操作基于CSV文件中提供的标题.

(来自评论)这是我的代码到目前为止:

final JavaRDD<String> File = sc.textFile(Filename).cache();
final JavaRDD<String> lines = File.flatMap(new FlatMapFunction<String, String>() { 
    @Override public Iterable<String> call(String s) { 
    return Arrays.asList(EOL.split(s)); 
    } 
});
final String heading=lines.first().toString();
Run Code Online (Sandbox Code Playgroud)

我可以像这样得到标题值.我想将其映射到CSV文件中的每条记录.

final String[] header=heading.split(" "); 
Run Code Online (Sandbox Code Playgroud)

我可以像这样得到标题值.我想将其映射到CSV文件中的每条记录.

在java中,我CSVReader record.getColumnValue(Column header)用来获取特定的值.我需要在这里做类似的事情.

scala apache-spark

49
推荐指数
4
解决办法
9万
查看次数

如何在matplotlib中设置错误条上限的线宽?

如何更改Matplotlib中错误条上限的线宽?

我尝试了以下代码:

(_, caplines, _) = matplotlib.pyplot.errorbar(
    data['distance'], data['energy'], yerr=data['energy sigma'],
    capsize=10, elinewidth=3)

for capline in caplines:
    capline.set_linewidth(10)
    capline.set_color('red')

pp.draw()
Run Code Online (Sandbox Code Playgroud)

不幸的是,这将更新瓶盖的颜色,但并没有更新线宽盖的!

结果效果类似于下图中的"胖错误条线/薄帽": 在此输入图像描述

在这种情况下,有"胖"酒吧帽是很好的; 怎么能在Matplotlib中完成?逐个"手动"绘制条形帽plot()可以工作,但更简单的替代方案是最好的.

python matplotlib

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

如何使用pyplot(Python)使轴占用多个子图

我想在单个图中有三个图.该图应具有2×2的子图布局,其中第一个图应占据前两个子图单元(即整个第一行图单元),其他图应位于单元3和4中的第一个图下方.我知道matlab允许这样使用subplot命令

subplot(2,2,[1,2]) % the plot will span subplots 1 and 2
Run Code Online (Sandbox Code Playgroud)

在pyplot中是否也可以让单个轴占用多个子图?pyplot.subplot的docstring没有谈论它.

谁有一个简单的解决方案?提前致谢

python matplotlib

37
推荐指数
7
解决办法
4万
查看次数

将结构化数组转换为常规NumPy数组

我认为答案非常明显,但我现在还没有看到.

如何将记录数组转换回常规ndarray?

假设我有以下简单的结构化数组:

x = np.array([(1.0, 4.0,), (2.0, -1.0)], dtype=[('f0', '<f8'), ('f1', '<f8')])
Run Code Online (Sandbox Code Playgroud)

然后我想将其转换为:

array([[ 1.,  4.],
       [ 2., -1.]])
Run Code Online (Sandbox Code Playgroud)

我试过asarrayastype,但没有奏效.

UPDATE(求解:float32(f4)而不是float64(f8))

好的,我尝试了Robert(x.view(np.float64).reshape(x.shape + (-1,)) )的解决方案,并且使用简单的数组它可以完美地工作.但是对于我想要转换的数组,它给出了一个奇怪的结果:

data = np.array([ (0.014793682843446732, 0.006681123282760382, 0.0, 0.0, 0.0, 0.0008984912419691682, 0.0, 0.013475529849529266, 0.0, 0.0),
       (0.014793682843446732, 0.006681123282760382, 0.0, 0.0, 0.0, 0.0008984912419691682, 0.0, 0.013475529849529266, 0.0, 0.0),
       (0.014776384457945824, 0.006656022742390633, 0.0, 0.0, 0.0, 0.0008901208057068288, 0.0, 0.013350814580917358, 0.0, 0.0),
       (0.011928378604352474, 0.002819152781739831, 0.0, 0.0, 0.0, 0.0012627150863409042, 0.0, 0.018906937912106514, 0.0, 0.0),
       (0.011928378604352474, 0.002819152781739831, 0.0, 0.0, 0.0, 0.001259754877537489, …
Run Code Online (Sandbox Code Playgroud)

python numpy recarray

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