小编Tho*_*ius的帖子

如何为hist2d图添加颜色条

好吧,我知道如何直接用图形创建图形时为图形添加颜色条matplotlib.pyplot.plt.

from matplotlib.colors import LogNorm
import matplotlib.pyplot as plt
import numpy as np

# normal distribution center at x=0 and y=5
x = np.random.randn(100000)
y = np.random.randn(100000) + 5

# This works
plt.figure()
plt.hist2d(x, y, bins=40, norm=LogNorm())
plt.colorbar()
Run Code Online (Sandbox Code Playgroud)

但是为什么以下不起作用,我需要添加什么colorbar(..)才能使其工作.

fig, ax = plt.subplots()
ax.hist2d(x, y, bins=40, norm=LogNorm())
fig.colorbar()
# TypeError: colorbar() missing 1 required positional argument: 'mappable'

fig, ax = plt.subplots()
ax.hist2d(x, y, bins=40, norm=LogNorm())
fig.colorbar(ax)
# AttributeError: 'AxesSubplot' object has no attribute 'autoscale_None'

fig, ax …
Run Code Online (Sandbox Code Playgroud)

python matplotlib

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

如何在python中使用matplotlib创建曼哈顿情节?

不幸的是,我自己没有找到解决方案.如何使用例如matplotlib/pandas在python中创建Manhattan图.问题是在这些图中,x轴是离散的.

from pandas import DataFrame
from scipy.stats import uniform
from scipy.stats import randint
import numpy as np

# some sample data
df = DataFrame({'gene' : ['gene-%i' % i for i in np.arange(1000)],
'pvalue' : uniform.rvs(size=1000),
'chromosome' : ['ch-%i' % i for i in randint.rvs(0,12,size=1000)]})

# -log_10(pvalue)
df['minuslog10pvalue'] = -np.log10(df.pvalue)
df = df.sort_values('chromosome')

# How to plot gene vs. -log10(pvalue) and colour it by chromosome?
Run Code Online (Sandbox Code Playgroud)

python plot matplotlib genetics pandas

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

如何使用dict对DataFrame进行子集化?

说,我已经给出了一个DataFrame,其中大多数列都是分类数据.

> data.head()
  age risk     sex smoking
0  28   no    male      no
1  58   no  female      no
2  27   no    male     yes
3  26   no    male      no
4  29  yes  female     yes
Run Code Online (Sandbox Code Playgroud)

我想通过这些分类变量的键值对字典对这些数据进行子集化.

tmp = {'risk':'no', 'smoking':'yes', 'sex':'female'}
Run Code Online (Sandbox Code Playgroud)

因此,我想拥有以下子集.

data[ (data.risk == 'no') & (data.smoking == 'yes') & (data.sex == 'female')]
Run Code Online (Sandbox Code Playgroud)

我想做的是:

data[tmp]
Run Code Online (Sandbox Code Playgroud)

这样做最蟒蛇/熊猫的方法是什么?


最小的例子:

import numpy as np
import pandas as pd
from pandas import Series, DataFrame

x = Series(random.randint(0,2,50), dtype='category')
x.cat.categories = ['no', 'yes']

y = Series(random.randint(0,2,50), dtype='category') …
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas categorical-data

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

将python与knitr一起使用

我想和knitr一起使用python.但是,python块似乎单独进行评估,并且变量定义在块之间丢失.

怎么解决这个?

最小的例子:

test.pymd

---
title: "Minimal example"
---

With a print statement.

```{r hello}
x = 'Hello, Python World!'
print(x)
```

Without a print statement.

```{r world}
print(x)
```
Run Code Online (Sandbox Code Playgroud)

test.md

---
title: "Minimal example"
---

With a print statement.


```python
x = 'Hello, Python World!'
print(x)
```

```
Hello, Python World!
```

Without a print statement.


```python
print(x)
```

```
Traceback (most recent call last):
  File "<string>", line 1, in <module>
NameError: name 'x' is not defined
```
Run Code Online (Sandbox Code Playgroud)

knit2py.r …

python markdown r knitr

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

如何在 Python 中并行处理 pandas DataFrame 的行

示例性虚拟示例:

\n

我有一个数据框df

\n
> df\n\n       para0  para1   para2\n0  17.439020   True    high\n1  19.757758   True    high\n2  12.434424   True  medium\n3  14.789654   True     low\n4  14.131464  False    high\n5   9.900233   True    high\n6  10.977869  False     low\n7   8.004251   True  medium\n8  11.468420  False     low\n9  12.764453  False    high\n
Run Code Online (Sandbox Code Playgroud)\n

其中每一行都包含函数的参数集合\n foobar

\n
def foobar(r):\n    """ r is a row of df, does something, and it takes a long time"""\n    if r.para1:\n        x = r.para2\n    else:\n        x = 'low'\n    return int(r.para0), (r.Index+13)%3 == 0, x\n
Run Code Online (Sandbox Code Playgroud)\n

我想应用 …

python multiprocessing pandas

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

如何禁用RMD文件中代码区域的拼写检查(Markdown,knitr,R)

我正在使用Vim-R-plugin编辑包含markdown和R-code块的文件,以便可以使用knitr编译文件.文件类型为:RMD.我启用了拼写检查.如何禁用代码块中的拼写检查?

vim markdown spell-checking r knitr

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