我有一组X,Y数据点(大约10k),很容易绘制为散点图,但我想表示为热图.
我查看了MatPlotLib中的示例,他们似乎都已经开始使用热图单元格值来生成图像.
有没有一种方法可以将一堆x,y,所有不同的,转换为热图(其中x,y频率较高的区域会变得"温暖")?
在这种情况下,单结肠和双结肠有什么区别?
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']
假设我有这样的函数:
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.
我正在使用以下代码,尝试将我的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)
但是,直方图没有显示在子图中.谁知道我错过了什么?谢谢!
我正在为我的项目创建一个 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中制作同样的情节?该图旨在对您的分布如何偏离预期分布进行良好的直观表示.它会将直方图的条形挂在预期的分布线上,因此在条形图的底部和x轴之间读取与预期值的差异,而不是在条形图的顶部和预期的分布曲线之间.
我找不到任何内置功能.
我有一个如下所示的熊猫数据框:
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中有以下列表:
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 ×8
histogram ×3
matplotlib ×3
pandas ×2
autocomplete ×1
colon ×1
dictionary ×1
heatmap ×1
histogram2d ×1
list ×1
numpy ×1
plot ×1
pycharm ×1
python-3.x ×1
slice ×1
typehints ×1
types ×1