数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(6)
创始人
2024-04-02 15:59:15
0

文章目录

    • 前期准备
    • 1. 使用绝对路径读取本地Excel数据
    • 2. 查看数据前三行
    • 3. 查看每一列数据缺失值情况
    • 4. 提取日期列含有空值的行
    • 5. 输出每列缺失值具体行的情况
    • 6. 删除所有缺失值的行
    • 7. 绘制收盘价的折线图
    • 8. 同时绘制开盘价与收盘价
    • 9. 绘制涨跌的直方图
    • 10. 让直方图给更细致

本章使用的是一个股票的数据集,但是只进行一些基础的操作,数据导入,处理缺失值,查看缺失值的具体情况,绘制图像,在同一个图中绘制两个图,调整绘图的风格

前期准备

导包

import pandas as pd
import numpy as np
# 绘图包
from matplotlib import pyplot as plt

设置绘图的风格和字体的大小,以及显示能中文

plt.style.use('seaborn-darkgrid')  # 绘图的风格
plt.rc('font',size=6)   # 设置字体和字体大小
plt.rc('figure',figsize=(4,3),dpi=150)  # 设置画布的比例,清晰图
# 使图形中的中文正常编码显示
plt.rcParams['font.sans-serif'] = ['SimHei']
# 使坐标轴刻度表签正常显示正负号
plt.rcParams['axes.unicode_minus'] = False

1. 使用绝对路径读取本地Excel数据

注意绝对路径的斜杠和反斜杠的关系

数据集在我的博客资源里面可以找

df = pd.read_excel(r'D:\Python work space\jupyter\Pandas必刷100道题\600000.SH.xls')
df

在这里插入图片描述

2. 查看数据前三行

使用head()查看前3行
同样我们也可以使用切片进行查看

# 查看数据前三行
df.head(3)
# 使用切片查看前3行
df.iloc[:3,:]

在这里插入图片描述

3. 查看每一列数据缺失值情况

isnull()函数会判断DataFrame中每一个元素是否是空值,如果是空值返回True,否则返回False,然后对每一列求和,结果等于多少就代表空值有多少个

# 查看每一列数据缺失值情况
df.isnull().sum()

在这里插入图片描述

4. 提取日期列含有空值的行

关键点布尔值索引

df[df["日期"].isnull()]

在这里插入图片描述

5. 输出每列缺失值具体行的情况

因为是每一列,所以要分列逐一进行判断

for columname in df.columns:loc = df[columname][df[columname].isnull().values].index.tolist()print(f"列名:{columname},第{loc}行位置有缺失值")

在这里插入图片描述

6. 删除所有缺失值的行

删除空值:dropna 函数

# 删除所有缺失值的行
# axis=0 表示删除行,axis=0表示删除列
# how='any' 删除的条件
# inplace=True是否改变原数据,默认不改变
df.dropna(axis=0,how='any',inplace=True)

在这里插入图片描述

7. 绘制收盘价的折线图

折线图:plot()
有两种绘制方法,一种是pandas直接进行绘制,另一种是使用matplotlib接受参数绘制

# 绘制收盘价的折线图
# 方式1
df['前收盘价(元)'].plot()
# 方式2
plt.plot(df['前收盘价(元)'])

在这里插入图片描述

8. 同时绘制开盘价与收盘价

这个主要就是绘在同一张图中绘两个折线图

df[['开盘价(元)','收盘价(元)']].plot()

在这里插入图片描述

9. 绘制涨跌的直方图

直方图又叫频率分布直方图,是统计在一个区间内,数据出现的次数
默认的会将数据分为10组
在这里插入图片描述

10. 让直方图给更细致

调整分组的大小,让直方图绘制的更加细致
调整分组的数量bins=30 将分组调整为30组

plt.hist(df['涨跌幅(%)'],bins=30)

在这里插入图片描述

在这里插入图片描述

相关内容

热门资讯

银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...