python - 使用 pandas 在 2 个变量之间绘制图表
问题描述
我需要在我的数据集的各种属性之间绘制一个图表,根据我目前的知识,我所知道的只是直方图,因此我只能采用一个变量。
我试过这个简单的代码:
sn.catplot(x="CDR", y="Age", hue="M/F", data=df);
plt.title('Distribution of Age by CDR rate')
CDR 是临床痴呆分级。
我确实有 R 语言的代码,他们首先将它们全部分组,然后绘制图表,但我发现更复杂,所以我决定采用这种方式。
我对这个错误一无所知。我尝试了 df.CDR、df.age、df.M/F,但由于名称“M/F”而出现错误。
'DataFrame' 对象没有属性 'M'
我尝试在数据集中更改名称,但这会产生更多错误。
帮助!!!! df.head()
解决方案
在 Python 中,使用 seaborn.violinplot
https://seaborn.pydata.org/generated/seaborn.violinplot.html
下面的完整示例(来自 seaborn doc):
import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
sns.set_theme(style="whitegrid")
tips = sns.load_dataset("tips")
df = pd.DataFrame([[0.0, 0.0, 0.0, 0.2, 0.2, 0.2, 0.2], [87, 88, 89, 60, 55, 58, 59],
["M", "M", "F", "F", "F", "F", "M"]]).T
df.columns = ["CDR", "Age", "M/F"]
df = df.astype({"CDR": "float64", "Age": "int64"}) # Update type
sns.violinplot(x="CDR", y="Age", hue="M/F", data=df)
plt.show()
推荐阅读
- scala - 如何使用 kafka 流为 kafka 主题中的键保留 N 个最新值
- c# - 我们如何停止对登录表单的速率限制蛮力攻击
- c# - .net 是否为每个测试方法创建实例?
- python-3.x - 使用数据框中行的先前值来构建当前单元格值
- html - 如何在 div 内创建半圆形或与文本内联的按钮
- boost - 从 boost 网站运行示例时出错
- android - 基于用户输入以编程方式设置小部件的TextColor
- angular - 通过 filter 方法给出的对象(对于 material.angular.io 自动完成字段)变得未定义
- c# - 空列表上的模型验证失败
- lua - D/Dlang:Lua 接口,有什么方法可以强制用户无法访问中间对象?