dataframe[dataframe['name'] == 'Stockholm Skies (feat. Tom Taped & Alex Aris)']
df_s = StandardScaler().fit_transform(df)
df_s

tsne_results = TSNE(n_components = 2, verbose = 1, perplexity = 50, n_iter = 10000).fit_transform(df_s)

tsne_results=pd.DataFrame(tsne_results, columns=['tsne1', 'tsne2'])
tsne_results['name'] = dataframe['name']
tsne_results['energy'] = dataframe['energy']
tsne_results['acousticness'] = dataframe['acousticness']
tsne_results['valence'] = dataframe['valence']
tsne_results['tempo'] = dataframe['tempo']
tsne_results['danceability'] = dataframe['danceability']
tsne_results['uri'] = dataframe['uri']

tsne_results.head(5)
tsne_results[tsne_results['name'] == 'Stockholm Skies (feat. Tom Taped & Alex Aris)']

def plot_tsne():
    plt.scatter(tsne_results['tsne1'], tsne_results['tsne2'])
    plt.show()


plot_tsne()

def plt_tsne():
    sns.FacetGrid(tsne_results, hue = 'danceability', height = 5).map(plt.scatter, 'tsne1', 'tsne2' )
    plt.show()

plt_tsne()
Exemple #2
0
# 各类别个数
r1 = pd.Series(model.labels_).value_counts()
r2 = pd.DataFrame(model.cluster_centers_)
print(r1)
print(r2)
r = pd.concat([r2, r1], axis=1)
# 重命名表头
r.columns = list(data.columns) + [u'类别数目']
print(r)
# 详细输出原始数据及其类别
res = pd.concat([data, pd.Series(model.labels_, index=data.index)], axis=1)
res.columns = list(data.columns) + [u"聚类类别"]
res.to_excel(outputfile)

from sklearn.manifold import TSNE
import matplotlib.pyplot as plt
t = TSNE()
t.fit_transform(data_std)
t = pd.DataFrame(t.embedding_, index=data_std.index)
print(t.head(5))
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
d = t[res[u'聚类类别'] == 0]
plt.plot(d[0], d[1], 'r.')
d = t[res[u'聚类类别'] == 1]
plt.plot(d[0], d[1], 'go')
d = t[res[u'聚类类别'] == 2]
plt.plot(d[0], d[1], 'b*')
plt.show()
plt.savefig('Consequence/label.png')