小编hon*_*a_p的帖子

使用散点图数据在MatPlotLib中生成热图

我有一组X,Y数据点(大约10k),很容易绘制为散点图,但我想表示为热图.

我查看了MatPlotLib中的示例,他们似乎都已经开始使用热图单元格值来生成图像.

有没有一种方法可以将一堆x,y,所有不同的,转换为热图(其中x,y频率较高的区域会变得"温暖")?

python matplotlib heatmap histogram2d

172
推荐指数
8
解决办法
19万
查看次数

Python:单冒号与双冒号

在这种情况下,单结肠和双结肠有什么区别? data[0:,4]VSdata[0::,4]

women_only_stats = data[0::,4] == "female" 

men_only_stats = data[0::,4] != "female"   
Run Code Online (Sandbox Code Playgroud)

我试图替换data[0::,4],data[0:,4]我看到没有区别.这个或另一个案件有什么不同吗?

data 是具有行的二维数组 ['1' '0' '3' 'Braund, Mr. Owen Harris' 'male' '22' '1' '0' 'A/5 21171' '7.25' '' 'S']

python numpy colon slice

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

Python类型提示和`*args`

假设我有这样的函数:

def foo(*args):
    for x in args:
        print(x)
Run Code Online (Sandbox Code Playgroud)

而且我想说我想说的所有元素args都是int; 从PEP 0484开始表达它的正确方法是什么?我应该做点什么吗

from typing import Tuple


def foo(*args: Tuple[int, ...]) -> None:
    for x in args:
        print(x)
Run Code Online (Sandbox Code Playgroud)

或类似的东西

def foo(*args: int) -> None:
    for x in args:
        print(x)
Run Code Online (Sandbox Code Playgroud)

或完全不同的东西?

特别是,我试图在PyCharm中有效地使用类型提示,而我所想到的解决方案似乎都没有帮助PyCharm理解x应该是一个int.

python types pycharm python-3.x typehints

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

pandas histogram:每列的绘图直方图作为大图的子图

我正在使用以下代码,尝试将我的pandas数据框df_in的每一列的直方图绘制为一个大图的子图.

%matplotlib notebook
from itertools import combinations
import matplotlib.pyplot as plt

fig, axes = plt.subplots(len(df_in.columns) // 3, 3, figsize=(12, 48))
for x in df_in.columns:
    df_in.hist(column = x, bins = 100)

fig.tight_layout()
Run Code Online (Sandbox Code Playgroud)

但是,直方图没有显示在子图中.谁知道我错过了什么?谢谢!

python histogram pandas

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

如何在提示工具包中重用 PathCompleter 的补全

我正在为我的项目创建一个 REPL 工具,该工具(为了清楚起见而进行了简化)直接执行输入的命令,或者(如果输入命令“.x some/path/to/file”)从文件读取并执行它们。我的问题与自动完成用户输入(使用prompt_toolkit)有关。

我有类似的东西(最小可执行示例):

import prompt_toolkit
from prompt_toolkit.completion import Completer, Completion
from prompt_toolkit.document import Document
from prompt_toolkit.contrib.completers import PathCompleter


class CommandCompleter(Completer):
    def __init__(self):
        self.path_completer = PathCompleter()
        self.commands = [".x", "command1", "command2"]

    def get_completions(self, document, complete_event):
        if document.text.startswith(".x "):
            sub_doc = Document(document.text[3:])
            yield from (Completion(cmd.text, -document.cursor_position)
#                                  ????????  ?????????????????????????
                        for cmd
                        in self.path_completer.get_completions(sub_doc, complete_event))
#                                                              ???????
        else:
            yield from (Completion(cmd, -document.cursor_position)
                        for cmd in self.commands
                        if cmd.startswith(document.text))

if __name__ == "__main__":
    while True:
        other_args = {}
        input = prompt_toolkit.prompt(">>> ", …
Run Code Online (Sandbox Code Playgroud)

python autocomplete prompt-toolkit

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

如何在python中绘制悬挂的根图?

受这个问题的启发,你如何在python中制作同样的情节?该图旨在对您的分布如何偏离预期分布进行良好的直观表示.它会将直方图的条形挂在预期的分布线上,因此在条形图的底部和x轴之间读取与预期值的差异,而不是在条形图的顶部和预期的分布曲线之间.

我找不到任何内置功能.

挂根图

python plot matplotlib histogram

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

使用matplotlib在一个子图中从熊猫DataFrame绘制两个直方图

我有一个如下所示的熊猫数据框:

df = pd.DataFrame({ 'a_wood' : np.random.randn(100),
                 'a_grassland' : np.random.randn(100),
                 'a_settlement' : np.random.randn(100),
                 'b_wood' : np.random.randn(100),
                 'b_grassland' : np.random.randn(100),
                  'b_settlement' : np.random.randn(100)})
Run Code Online (Sandbox Code Playgroud)

我想用一个子图中的每个数据帧头创建此数据的直方图。

fig, ax = plt.subplots(2, 3, sharex='col', sharey='row')

m=0
for i in range(2):
    for j in range(3):

        df.hist(column = df.columns[m], bins = 12, ax=ax[i,j], figsize=(20, 18))
        m+=1
Run Code Online (Sandbox Code Playgroud)

为此,以前的代码可以完美地工作,但是现在我想将eyery a和b标头(例如“ a_woods”和“ b-woods”)组合到一个子图中,因此只有三个直方图。我尝试将两个列分配给,df.columns[[m,m+3]]但这不起作用。我也有一个索引列,其中包含类似“ day_1”之类的字符串,我希望将其放在x轴上。有人能帮我吗?

这就是我走了多远。 直方图

python matplotlib histogram pandas

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

Python:将两个列表合并到字典中

我在Python中有以下列表:

students = ["Anderson", "Peter", "Anderson", "Bastian"]
courses = ["Biology", "History", "Maths", "History"]
Run Code Online (Sandbox Code Playgroud)

我编写了一个for循环,试图在字典中关联这些对,以便:

Anderson-Biology
Peter-History
Anderson-Maths
Bastian-History
Run Code Online (Sandbox Code Playgroud)

for循环如下:

test_dict = {}
for i in range (0, len(students)):
    test_dict[students[i]] = courses[i]
Run Code Online (Sandbox Code Playgroud)

但是,当打印出字典时,我得到:

{'Bastian': 'History', 'Anderson': 'Maths', 'Peter': 'History'}
Run Code Online (Sandbox Code Playgroud)

"安德森"发生了什么:'生物学,有没有办法解决这个问题?

python dictionary list

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