list python 减少维度_Python 之 降低数据的维度,实现可视化

1.导入相关模块

import numpy as np

from sklearn.datasets import fetch_openml

2.MNIST Dataset

mnist = fetch_openml("mnist_784")

X = mnist.data / 255.0

y = mnist.target

X.shape, y.shape

数据转换为Pandas数据框架

import pandas as pd

feat_cols = ['pixel' + str(i) for i in range(X.shape[1])]

df = pd.DataFrame(X, columns=feat_cols)

df['label'] = y

df['label'] = df['label'].apply(lambda i: str(i))

X, y = None, None

print('Size of the dataframe: {}'.format(df.shape))

由于数据框中的教程是按类排序的,所以我们需要一个随机顺序的索引向量来混合例子。

rndperm = np.random.permutation(df.shape[0])

将随机图像可视化

matshow允许将一个二维矩阵或数组可视化为一个彩色图像。

%matplotlib inline

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Python对Excel表格中的数据进行不同维度可视化,可以使用以下步骤: 1. 导入必要的库和数据:首先,需要导入一些必要的库,如pandas、matplotlib等,并将Excel表格中的数据读入到pandas.DataFrame中。 ```python import pandas as pd import matplotlib.pyplot as plt df = pd.read_excel('data.xlsx') ``` 2. 数据清洗和处理:在可视化之前,需要对数据进行清洗和处理,以便正确地进行可视化。这可能包括删除无用的列、填充缺失值、数据类型等。 ```python # 删除无用的列 df = df.drop(['ID'], axis=1) # 填充缺失值 df = df.fillna(0) # 数据类型 df['Month'] = pd.to_datetime(df['Month'], format='%Y-%m-%d').dt.month ``` 3. 单变量可视化:单变量可视化是指对单个变量进行可视化。可以使用直方图、箱线图、密度图等来显示数据的分布情况。 ```python # 直方图 plt.hist(df['Sales'], bins=10) plt.xlabel('Sales') plt.ylabel('Frequency') plt.show() # 箱线图 plt.boxplot(df['Sales']) plt.ylabel('Sales') plt.show() # 密度图 df['Sales'].plot(kind='density') plt.xlabel('Sales') plt.show() ``` 4. 双变量可视化:双变量可视化是指对两个变量进行可视化。可以使用散点图、线图、热力图等来显示两个变量之间的关系。 ```python # 散点图 plt.scatter(df['Month'], df['Sales']) plt.xlabel('Month') plt.ylabel('Sales') plt.show() # 线图 df.groupby('Month')['Sales'].sum().plot() plt.xlabel('Month') plt.ylabel('Total Sales') plt.show() # 热力图 pivot = pd.pivot_table(df, values='Sales', index='Month', columns='Category') plt.pcolor(pivot, cmap='Blues') plt.xlabel('Category') plt.ylabel('Month') plt.colorbar() plt.show() ``` 5. 多变量可视化:多变量可视化是指对三个或更多变量进行可视化。可以使用散点图矩阵、平行坐标图、雷达图等来显示多个变量之间的关系。 ```python # 散点图矩阵 pd.plotting.scatter_matrix(df, diagonal='hist') plt.show() # 平行坐标图 from pandas.plotting import parallel_coordinates parallel_coordinates(df, 'Category') plt.show() # 雷达图 from math import pi categories = df['Category'].unique() N = len(categories) angles = [n / float(N) * 2 * pi for n in range(N)] angles += angles[:1] ax = plt.subplot(111, polar=True) for category in categories: values = df[df['Category'] == category].iloc[:, 1:].mean().tolist() values += values[:1] ax.plot(angles, values, linewidth=1, linestyle='solid', label=category) ax.fill(angles, values, 'gray', alpha=0.1) ax.set_theta_offset(pi / 2) ax.set_theta_direction(-1) ax.set_thetagrids([n / float(N) * 360 for n in range(N)], categories) plt.legend(loc='upper right', bbox_to_anchor=(0.1, 0.1)) plt.show() ``` 以上就是使用Python对Excel表格中的数据进行不同维度可视化的步骤和示例代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值