小编Tim*_*imo的帖子

Pandas to_html() truncates string contents

I have a Python Pandas DataFrame object containing textual data. My problem is, that when I use to_html() function, it truncates the strings in the output.

For example:

import pandas
df = pandas.DataFrame({'text': ['Lorem ipsum dolor sit amet, consectetur adipiscing elit.']})
print (df.to_html())
Run Code Online (Sandbox Code Playgroud)

The output is truncated at adapis...

<table border="1" class="dataframe">
  <thead>
    <tr style="text-align: right;">
      <th></th>
      <th>text</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>0</th>
      <td> Lorem ipsum dolor sit amet, consectetur adipis...</td>
    </tr>
  </tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

There is a related question on …

html python pandas

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

如何使用numpy/scipy执行双样本单尾t检验

R,只需使用即可执行双样本单尾t检验

> A = c(0.19826790, 1.36836629, 1.37950911, 1.46951540, 1.48197798, 0.07532846)
> B = c(0.6383447, 0.5271385, 1.7721380, 1.7817880)
> t.test(A, B, alternative="greater")

    Welch Two Sample t-test

data:  A and B 
t = -0.4189, df = 6.409, p-value = 0.6555
alternative hypothesis: true difference in means is greater than 0 
95 percent confidence interval:
 -1.029916       Inf 
sample estimates:
mean of x mean of y 
0.9954942 1.1798523 
Run Code Online (Sandbox Code Playgroud)

在Python世界中,scipy提供了类似的函数ttest_ind,但它只能进行双尾t检验.关于我发现的主题的最近信息是这个链接,但它似乎是对实施单尾与双尾的策略的讨论scipy.

因此,我的问题是,是否有人知道有关如何使用单尾版本测试的任何示例或说明numpy/scipy

python statistics numpy scipy

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

将几个子过程连在一起

我有5个进程p1,p2,...,p5,我想把一些数据写入p1的stdin,管道p1输出到p2 stdin,最后从p5的输出读取最终结果.

到目前为止我尝试了什么:

p1 = Popen(['p1'], stdin=PIPE, stdout=PIPE)
p2 = Popen(['p2'], stdin=p1.stdout, stdout=PIPE)
...
p5 = Popen(['p5'], stdin=p4.stdout, stdout=PIPE)

# write data to stdin
p1.stdin.write(indata)
p1.stdin.close()

# not sure in what order to close the pipes here, if at all

# read output
out = p5.stdout.read()
print out
Run Code Online (Sandbox Code Playgroud)

剪辑的最后一个代码只是挂起,因为我必须正确地进行读/写操作.

我能够使用communicate()两个进程来处理单个进程而无需向第一个进程提供任何输入(例如来自Python文档):

output=`dmesg | grep hda`
==>
p1 = Popen(["dmesg"], stdout=PIPE)
p2 = Popen(["grep", "hda"], stdin=p1.stdout, stdout=PIPE)
p1.stdout.close()  # Allow p1 to receive a SIGPIPE if p2 exits. …
Run Code Online (Sandbox Code Playgroud)

python pipe

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

Android清单VM最小堆大小

是否可以选择在Android清单中声明操作系统/设备所需的最小VM堆大小,以便Android Market仅显示满足要求的设备的应用程序并过滤掉其余部分.

我可以在应用程序启动期间检测到最大VM堆大小,如果没有足够的可用内存,则会失败.然而,这对用户来说是不方便的.

具体来说,我正在和朋友一起做一个爱好游戏,其中图形需要至少16MB但不超过24MB的内存.在某种意义上,在任何给定的游戏状态下,只需要的图形被加载到内存中,内存使用量或多或少是最佳的.

android heap-memory dalvik android-manifest google-play

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

用ggplot2绘制概率(不是密度)

我想绘制数据,使得在y轴上存在概率(在范围[0,1]中)并且在x轴上我具有数据值.数据是连续的(也在范围[0,1]中),因此我想使用一些核密度估计函数并对其进行归一化,使得某个点x处的y值意味着在输入中看到值x的概率数据.

所以,我想问一下:

a)它是否合理?我知道我不可能看到数据中没有的值,但我只想在使用内核密度估计函数的点之间进行插值,然后将其标准化.

b)我可以使用的ggplot中是否有任何内置选项,这会覆盖geom_density()的默认行为,例如这样做?

提前致谢,

蒂莫

编辑:当我之前说"正常化"时,我实际上是指"规模".但我得到了答案,所以谢谢你们清理我的想法.

r ggplot2

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

优化Haskell中的基数排序

我还在学习Haskell,并编写了以下基数排序函数.它似乎工作正常,但问题是它相当于内存效率低下.如果使用ghc编译,则内存大小超过500MB,输入列表大小为10000个元素.

所以我想问你如何改进以下算法/代码,使其在速度和内存方面更有效率.什么是最好的起点?

import System.Random

-- radixsort for positive integers. uses 10 buckets
radixsort :: [Int] -> [Int]
radixsort [] = []
radixsort xs =
    -- given the data, get the number of passes that are required for sorting
    -- the largest integer
    let maxPos = floor ((log (fromIntegral (foldl max 0 xs)) / log 10) + 1)

        -- start sorting from digit on position 0 (lowest position) to position 'maxPos'
        radixsort' ys pos
         | pos < 0   = ys
         | …
Run Code Online (Sandbox Code Playgroud)

optimization haskell radix-sort

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

在R中绘制有向多图

我从未在R中使用任何图形绘图包,我熟悉基本的绘图命令和ggplot2包.我已经找到了(但没有试过了没有)是Rgraphviz,networkigraph包.所以我想问你,哪个包装有最简单的学习曲线,满足以下要求:

  • 有简单的布局引擎(弹簧布局,随机,...)
  • 尝试在两个顶点之间绘制多条边,以便它们不会重叠.作为奖励,能够调整它是很好的.
  • 可以绘制循环.
  • 顶点和边缘标签,顶点和边缘大小和颜色可调.
  • (不需要任何图形算法,如链接分析,最短路径,最大流量等,但很好,如果存在)

plot r graph

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

ggplot2方面边距

facet_wrap用来绘制一些数据.这是一个例子:

library (ggplot2)
library (reshape)

# generate some dummy data
x = seq(0,1,0.05)
precision = sqrt(x)
recall    = 1 - precision
fmeasure  = 2 * (precision * recall) / (precision + recall)

# prepare it for plotting
df = data.frame(x=x, precision=precision, recall=recall, fmeasure=fmeasure)
df = melt(df, id.vars=c(x))

# plot it
p = ggplot(df, aes(x=x, y=value, group=variable))
p = p + geom_line() + facet_wrap(~variable, ncol=3)
p = p + coord_cartesian(xlim=c(0,1), ylim=c(0,1)) # second plot is without this line
print …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

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

正则表达式在Python中匹配

我有关于正则表达式的问题.使用or构造时

$ python
Python 2.7.3 (default, Sep 26 2012, 21:51:14) 
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import re
>>> for mo in re.finditer('a|ab', 'ab'):
...     print mo.start(0), mo.end(0)
... 
0 1
Run Code Online (Sandbox Code Playgroud)

我们只得到一个匹配,这是预期作为第一个最左边的分支,被报告被接受.我的问题是它是否可能以及如何构造一个正则表达式,它将同时产生(0,1)和(0,2).而且,对于任何形式的正则表达式,一般如何做到这一点r1 | r2 | ... | rn.

同样,才有可能达到这一目的*,+?结构?默认情况下:

>>> for mo in re.finditer('a*', 'aaa'):
...     print mo.start(0), mo.end(0)
... 
0 3
3 3
>>> for mo in re.finditer('a+', 'aaa'):
...     print …
Run Code Online (Sandbox Code Playgroud)

python regex

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

InfluxDB只有在auth关闭的情况下才能创建第一个用户

有没有办法在启用身份验证的 InfluxDB 中创建用户?免责声明:我是 InfluxDB 的新手。

我创建了一个运行 InfluxDB 的 Docker 容器,并通过auth-enabled = true在文件的http部分中进行设置来启用身份验证influxdb.conf

[http]
  ...
  # Determines whether user authentication is enabled over HTTP/HTTPS.
  auth-enabled = true
  ...
Run Code Online (Sandbox Code Playgroud)

由于没有用户,我尝试使用以下命令创建一个:

docker exec influxdb influx -execute "create user admin with password 'blabla' with all privileges"
Run Code Online (Sandbox Code Playgroud)

然而,这失败了

"stdout": "ERR: error authorizing query: no user provided
Run Code Online (Sandbox Code Playgroud)

所以这是一个先有鸡还是先有蛋的问题。您无法创建用户,因为这首先需要以用户身份登录。

它在禁用身份验证时工作。所以我可以执行以下操作:

  1. 创建禁用身份验证的配置。
  2. 启动 InfluxDB
  3. 创建用户
  4. 更改配置以便现在启用身份验证。
  5. 重启 InfluxDB

但在这种情况下,我必须将配置存储在特定的 Docker 卷中,并且当任何人都可以在没有身份验证的情况下登录时,它仍然会留下一个窗口。所以它可以自动化,但它不是一个优雅的解决方案。

这个问题有优雅的解决方案吗?

docker influxdb

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

具有两个集合和where子句的mongodb join-like查询

假设我们在数据库中有以下集合:

db.documents.insert([{'name': 'A'}, {'name': 'B'}, {'name': 'C'}])
db.fragments.insert([{'value:': 'A1', doc_name: 'A'}, {'value:': 'A2', doc_name: 'A'},
                     {'value:': 'B1', doc_name: 'B'}, {'value:': 'B2', doc_name: 'B'},
                     {'value:': 'C1', doc_name: 'C'}, {'value:': 'C2', doc_name: 'C'}])
Run Code Online (Sandbox Code Playgroud)

其中documentscollection存储文档的名称(以及本示例中省略的其他内容),fragments集合引用doc_name与该片段相关的文档.

现在,如果我只想考虑一部分文件

> db.documents.find().limit(2)
{ "_id" : ObjectId("52d1a3bf49da25160ad6f076"), "name" : "A" }
{ "_id" : ObjectId("52d1a3bf49da25160ad6f077"), "name" : "B" }
Run Code Online (Sandbox Code Playgroud)

那我怎么能看到与这些选定文件相关联的片段,所以我会得到

{ "_id" : ObjectId("52d1a3bf49da25160ad6f079"), "value:" : "A1", "doc_name" : "A" }
{ "_id" : ObjectId("52d1a3bf49da25160ad6f07a"), "value:" : "A2", "doc_name" : "A" } …
Run Code Online (Sandbox Code Playgroud)

join where mongodb

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