pandas - Seaborn 用于分类的箱线图 pandas 宽到长

我有想要训练机器学习分类器的数据。数据是宽格式的。我想用 searborn sns.boxplot(x='variable',y='value', hue='target', data=df_train) 做一个箱线图。如何重塑数据以便能够将其传递给 sns.boxplot

样本数据

import pandas as pd
from sklearn import datasets
X, y = datasets.make_classification(n_samples=100, n_features=5, random_state=1)
df_train = pd.DataFrame(X)
df_train['y']=y

回答1

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.melt.html 是您想要使用的。

dfg_train = df_train.melt(id_vars='y')
sns.boxplot(x='variable',y='value', hue='y', data=dfg_train)

相似文章

随机推荐

最新文章