Как построить график плотности по метке (категориальной переменной) для каждого числового столбца? - PullRequest
0 голосов
/ 29 июня 2018

Я попытался использовать данные о шахтах и ​​породах (http://archive.ics.uci.edu/ml/datasets/connectionist+bench+(sonar,+mines+vs.+rocks)) для проведения EDA. Я поместил следующий код, который может построить график плотности для каждого числового столбца.

Есть ли способ построить одну и ту же диаграмму для каждой числовой переменной в наборе данных, но с двумя линиями на каждом графике плотности, исходя из того, является ли она M или R (последний столбец). Поэтому мы можем видеть, какая переменная показывает различное распределение для метки M против R.

import pandas as pd

# import file
file = 'https://archive.ics.uci.edu/ml/machine-learning- 
databases/undocumented/connectionist-bench/sonar/sonar.all-data'
mr_df = pd.read_table(file, sep=',', header=None)

mr_df.plot(kind='density', subplots=True, layout=(8,8), sharex=False, legend=False, fontsize=1, figsize=(12,12))
plt.savefig('density plot.png')

enter image description here

1 Ответ

0 голосов
/ 29 июня 2018
plt.subplots(nrows=8, ncols=8, figsize=(12,12))
for i in range(1, 61):
    plt.subplot(8, 8, i)
    mr_df.loc[mr_df[60] == 'R', i-1].plot(kind='density')
    mr_df.loc[mr_df[60] == 'M', i-1].plot(kind='density')

plt.subplot_tool() # allows easy adjustment of the subplot spacing

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...