我试图通过在熊猫数据框中创建散射矩阵来显示一个配对图。以下是创建对图的方法:
# Create dataframe from data in X_train
# Label the columns using the strings in iris_dataset.feature_names
iris_dataframe = pd.DataFrame(X_train, columns=iris_dataset.feature_names)
# Create a scatter matrix from the dataframe, color by y_train
grr = pd.scatter_matrix(iris_dataframe, c=y_train, figsize=(15, 15), marker='o',
hist_kwds={'bins': 20}, s=60, alpha=.8, cmap=mglearn.cm3)
我想把成对图显示成这样;
我使用的是python v3.6和PyCharm,而不是jupyter笔记本。
最佳答案
使用python 3.5.2,这段代码对我很有用:
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
from sklearn import datasets
iris_dataset = datasets.load_iris()
X = iris_dataset.data
Y = iris_dataset.target
iris_dataframe = pd.DataFrame(X, columns=iris_dataset.feature_names)
# Create a scatter matrix from the dataframe, color by y_train
grr = pd.plotting.scatter_matrix(iris_dataframe, c=Y, figsize=(15, 15), marker='o',
hist_kwds={'bins': 20}, s=60, alpha=.8)
对于熊猫版本感谢michael-szczepaniak指出此API已被弃用。
grr = pd.scatter_matrix(iris_dataframe, c=Y, figsize=(15, 15), marker='o',
hist_kwds={'bins': 20}, s=60, alpha=.8)
我只需要删除
cmap=mglearn.cm3
部分,因为我无法使mglish工作。sklearn存在版本不匹配问题。要不显示图像并将其直接保存到文件,可以使用以下方法:
plt.savefig('foo.png')
同时删除
# %matplotlib inline
关于python - 在Pandas数据帧中显示配对图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42592493/