数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(4)

这篇具有很好参考价值的文章主要介绍了数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(4)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前期准备

本章的十道题与前面的试题相连接,数据集用的同一个数据集一些操作也是基于上一个练习的

本次导包多导入了一个绘图的包,在这里我们只是简单的应用,后面会有详细的讲解用法

import pandas as pd
import numpy as np
from matplotlib import pyplot as plt 

数据集没有的可以私信我,也可以直接去我的资源里面找

df = pd.read_excel('data1.xlsx')
def fun(x):
    a,b = x.split('-')
    a = int(a.strip('k'))*1000
    b = int(b.strip('k'))*1000
    return int((a+b)/2)
df['salary'] = df['salary'].apply(fun)
bins = [0,5000,20000,50000]
group_names = ['底','中','高']
df['categories'] = pd.cut(df['salary'],bins,labels=group_names)
df

数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(4)

1. 计算salary列的中位数

中位数(Median)又称中值,统计学中的专有名词,是按顺序排列的一组数据中居于中间位置的数,代表一个样本、种群或概率分布中的一个数值,其可将数值集合划分为相等的上下两部分。对于有限的数集,可以通过把所有观察值高低排序后找出正中间的一个作为中位数。如果观察值有偶数个,通常取最中间的两个数值的平均数作为中位数。

# 方式1
np.median(df['salary'])
# 方式2
df['salary'].median()

数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(4)

2. 绘制薪资水平频率直方图

这个默认是分为10组,分别统计每组出现的次数

df.salary.plot(kind='hist')
# 改变分组数
df.salary.plot(kind='hist',bins=20)

数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(4)

3. 绘制薪资水平密度曲线

类似于频率直方图,只不过分组更小了,绘图方式采用的是曲线

df.salary.plot(kind='kde',xlim=(0,70000))

数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(4)

4. 删除最后一列categories

删除指定列

# 方式一 会直接删除原数据
del df['categories']  

# 方式二 默认不会删除原数据, 只有当inplace=True 才删除原数据
df.drop(columns=['categories'],inplace=True)  # 方式二

5. 将df的第一列与第二列合并为新的一列

因为这里的createTime列是时间序列,所以不能直接的合并,需要我们先将数据类型改变为str

# 将df的第一列与第二列合并为新的一列
# 需要将时间类型的数据装换成字符类型,使用的是`astype`类型
df['test'] = df['createTime'].astype('str')+ df['education']
df.head()

数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(4)

6. 将education列与salary列合并为新的一列

这个同第五题类似,都是合并两个列,都需要改数据类型
数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(4)

7. 计算salary列最大值与最小值之差

找出最大值和最小值做差

# 方式1
df['salary'].max()-df['salary'].min()
# 方式2 使用numpy中的方法
np.ptp(df['salary'])

数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(4)

8. 将第一行和最后一行拼接到一个DataFrame中

主要就是取对应行的操作和将不同的行合并起来

pd.concat([df[:1],df[-1:]])

数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(4)
另一种方式
取出数据然后将数据生成一个新的DataFrame

pd.DataFrame([df.iloc[0],df.iloc[-1]])

9. 将第8行数据添加到末尾

主要包括两个步骤,取出数据,添加数据

#  取出数据有两种信息
df[7:8]  # 使用切片操作
df.iloc[7]  # 使用.iloc取值

# 将第8行数据添加到末尾
df.append(df.iloc[7])

10. 查看每列的数据类型

dtypes 是属性,不用加括号

df.dtypes

# 也可以使用,但是展示的信息就比较多了
df.info()

本章我们学习了和合并列,添加新的行,删除指定列以及使用matplot
lib绘制一些简单的图形等功能,这些功能都是以后常用的,我在讲解的时候也拓展了不同的解题方式,希望大家发展思路,多多尝试。

期待大家的三连
数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(4)文章来源地址https://www.toymoban.com/news/detail-447588.html

到了这里,关于数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(4)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(7)

    本章使用还是金融数据集,不仅回顾的旧的知识点,还拓展了一些新的内容,主要的难点在于重置索引 reset_index() ,计算一列的差分 diff() ,时间索引的操作,滑动窗口的使用 rolling() 创建的DataFrame只有列名,并没有数据 由表可知我们能够发现还手率都是小数,我们只需要判

    2024年02月15日
    浏览(45)
  • 数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(5)

    本章的10道题仍然是基于前章的文件,主要学习了有设置索引、合并两个DataFrame对象、更改数据类型,不同列之间的运算,统计一列不同值得个数以及不同值分别出现得次数,还有如何灵活的运用布尔值运算。 数据集没有的可以私信我,也可以直接去我的资源里面找 set_inde

    2023年04月09日
    浏览(37)
  • 国际旅游网络的大数据分析(数学建模练习题)

    伴随着大数据时代的到来,数据分析已经深入到现代社会生活中的各个方面。 无论是国家政府部门、企事业单位还是个人,数据分析工作都是进行决策之前的 重要环节。 山东省应用统计学会是在省民政厅注册的学术类社会组织,于 1989 年成立。 学会是全省目前从事统计调查

    2024年02月11日
    浏览(51)
  • Pandas十大练习题,掌握常用方法

    代码均在Jupter Notebook上完成 数据集可从此获取: 链接: https://pan.baidu.com/s/1YGwh3pqxW4OlrQXt-5wgFg?pwd=3znx 提取码: 3znx 简介 数据集 1.分析Chipotle快餐数据 chipotle.tsv 2.分析2012欧洲杯数据 Euro2012_stats.csv 3.分析酒类消费数据 drinks.csv 4.分析1960 - 2014 美国犯罪数据 US_Crime_Rates_1960_2014.csv 5.分

    2024年01月16日
    浏览(51)
  • 【Python练习】数据分析库Pandas

    1. 了解Serie

    2024年02月09日
    浏览(57)
  • 日志审计与分析练习题

    1.  ( 单选题) 【单选题】以下关于日志的描述不正确的是( ) A. 日志是在事故发生后查明“发生了什么”的一个很好的“取证”信息来源,但无法为审计进行跟踪 B. 日志是由各种不同的实体产生的“安全记录”的集合 C. 通常为计算机系统、设备、软件等在某种情况下记录的信息

    2024年02月08日
    浏览(51)
  • 【算法设计与分析】动态规划-练习题

    输入一个整数数组 S[n] ,计算其最长递增子序列的长度,及其最长递增子序列。 定义 k ( 1 ≤ k ≤ n ) k (1 ≤ k ≤ n) k ( 1 ≤ k ≤ n ) ,L[k]表示以 S[k] 结尾的递增子序列的最大长度。子问题即为 L[k]。 对于每一个k,我们都遍历前面0~k-1的所有的数,找出最大的L[i],且 S [ k ] L [

    2024年02月03日
    浏览(57)
  • C语言:指针【进阶】习题练习及分析讲解

    前言: 前面我们刚刚学完了C语言:指针详解【进阶】的知识,这部分的知识还是要重在理解加实践,今天我这里就分享一些有关C语言指针方面的练习供大家更深入的理解指针的知识。 我们初期的指针学习大部分都是与数组的知识绑定在一起的,所以今天的练习也是大多与数

    2024年02月02日
    浏览(45)
  • MySQL:数据库练习题-1

    表一:employees 表二:salary 表三:departments 练习题及答案: ---1、查询empioyees表的员工部门号和性别,要求消除重复行 ---2、计算每个雇员的实际收入(实际收入=收入-支出) ---3、查询employees表中的姓名和性别,要求性别值为1时显示为“男”,为0时显示为“女” ---4、查询每

    2024年02月04日
    浏览(52)
  • 数据结构——二叉树练习题

    目录 单值二叉树  相同的树  另一棵树的子树 二叉树的前序遍历  二叉树的构造及遍历 给大家推荐一款刷题,找工作的好网站——牛客网 牛客网 - 找工作神器|笔试题库|面试经验|实习招聘内推,求职就业一站解决_牛客网   思路:根节点跟左子树比较,若相等则继续比,一

    2024年02月11日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包