是否可以将数据分组(用于定义x和y变量),以便直接在regPlot (或任何其他海运功能)中运行回归?我找不到这样的内置功能。
例如,在一列中,我有一个分类变量" C ",然后我试图使用每个C类别的中位数来拟合回归线(具有x和y)。有什么功能可以这样做吗?
发布于 2019-02-28 11:37:03
您需要首先使用pandas
对数据进行分组,然后使用seaborn
绘制它。由于您没有提供数据帧,因此我将使用一个海运样本数据集来演示。
import pandas as pd
import seaborn as sns
# load dataframe
df = sns.load_dataset('car_crashes')
数据帧如下所示。abbrev
列是一个类别列。我将使用total
和speeding
变量作为y和x。
首先,使用pandas .groupby()
方法并传递分类变量,同时链接另一个方法.median()
,这样pandas将聚合您的数据并返回数据的中位数。Pandas将返回一个数据帧,如下所示
然后只需调用要绘制的柱状图。在我们的例子中,它们是total
和speeding
。之后,将x和y传递给seaborn .regplot()
# group by
x = df.groupby(['abbrev']).median().speeding
y = df.groupby(['abbrev']).median().total
# plot
sns.regplot(x, y)
https://stackoverflow.com/questions/54883814
复制相似问题