我正在try 创建我的数据集的配对图,其中的变量是非常不同的数字(一些在0-1范围内,一些,如年龄和月收入,可以更高),我想使用以下代码将这些变量从1扩展到0-1:

scale_vars=['MonthlyIncome','age','NumberOfTime30-59DaysPastDueNotWorse','DebtRatio','NumberOfOpenCreditLinesAndLoans',
            'NumberOfTimes90DaysLate','NumberRealEstateLoansOrLines','NumberOfTime60-89DaysPastDueNotWorse',
            'NumberOfDependents']
scaler=MinMaxScaler(copy=False)
train2[scale_vars]=scaler.fit_transform(train2[scale_vars])

我的问题是,在zoom 变量并再次创建pairplot之后,它根本没有改变.你知道这可能是什么原因吗?下面是我用来创建pairplot的代码:

g=sns.pairplot(train2, hue='SeriousDlqin2yrs', diag_kws={'bw':0.2})

其中SeriousDlqin2yrs是Y变量.

推荐答案

这些曲线图看起来应该是一样的,但并不完全一样——刻度标签应该是不同的.zoom 器进行线性变换,seaborn根据值的范围 Select 轴限制,因此散点图中点的排列不会改变.

由于我没有您的数据,这里有与Ronald Fisher的classic 虹膜数据集相同的效果:

import pandas as pd
import seaborn as sns; sns.set()
from sklearn.datasets import load_iris
from sklearn.preprocessing import MinMaxScaler

iris_dict = load_iris(as_frame=True)
iris = iris_dict['data']
iris['species'] = iris_dict['target']

g = sns.pairplot(iris, hue='species', diag_kws={'bw_method':0.2})

plot with unscaled data

scale_vars = ['sepal length (cm)', 'sepal width (cm)', 
              'petal length (cm)', 'petal width (cm)']
scaler = MinMaxScaler(copy=False)
iris[scale_vars] = scaler.fit_transform(iris[scale_vars])

g = sns.pairplot(iris, hue='species', diag_kws={'bw_method':0.2})

plot with scaled data Note that the column names should have been changed when the scaling was done, because these are no longer centimeters.

Python相关问答推荐

跳过嵌套JSON中的级别并转换为Pandas Rame

如何从pandas DataFrame中获取. groupby()和. agg()之后的子列?

如何使用pytest在traceback中找到特定的异常

奇怪的Base64 Python解码

如何通过函数的强式路径动态导入函数?

Fake pathlib.使用pyfakefs的类变量中的路径'

牛郎星直方图中分类列的设置顺序

IpyWidget Select 框未打开

使用BeautifulSoap库从Web获取表格时没有响应

更新-如何与一个我无法使用python获得的按钮进行交互-Selify?

为什么Python多处理.Process()传递队列参数并且读取比函数传递队列参数和读取更快?

Select 满足特定条件的连续元素作为单独的数组

优化数组加法(y,x,RGBA)

获取Python中的层次 struct 数据

我想把字转换成8位二进制,但某些字符是7位的

如何在Python中以一种安全的方式获取Git提交散列

压平JSON后的Pandas 保留柱

Python .删除DataFrame中的标题标签(&U;UNNAMED:0),并将其余标题标签向左移动(不更改值)

如何计算数据集中的类别值并将求和转换为新的数据集?

Matplotlib背景 colored颜色 渐变生成边界