import warnings import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns #依赖 from sklearn.manifold import TSNE from sklearn.preprocessing import StandardScaler sns.set() warnings.filterwarnings('ignore') df = pd.read_csv( 'https://labfile.oss.aliyuncs.com/courses/1283/telecom_churn.csv') df.head() X = df.drop(['Churn','State'],axis=1) #转化为数值 X['International plan'] = X['International plan'].map({
'Yes':1,'No':0}) X['Voice mail plan'] = X['Voice mail plan'].map({
'Yes':1,'No':0}) #StandardScaler()方法归一化数据 scaler=StandardScaler() X_scaled = scaler.fit_transform(X) #构建t-sine tsne = TSNE(random_state=17) tsne_repr = tsne.fit_transform(X_scaled) #绘图 #plt.scatter(tsne_repr[:,0],tsne_repr[:,1],alpha=.5) #绘图加上色 #plt.scatter(tsne_repr[:,0],tsne_repr[:,1],c=df['Churn'].map({False:'blue',True:'orange'}),alpha=.5) _, axes = plt.subplots(1, 2, sharey=True, figsize=(12, 5)) for i, name in enumerate(['International plan', 'Voice mail plan']): axes[i].scatter(tsne_repr[:, 0], tsne_repr[:, 1], c=df[name].map({
'Yes': 'orange', 'No': 'blue'}), alpha=.5) axes[i].set_title(name)
讯享网


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/74448.html