当前位置:   article > 正文

《深入浅出Pandas:利用Python进行数据处理与分析》——第1部分 Pandas入门_深入浅出pandas pdf下载

深入浅出pandas pdf下载

书籍资料:《深入浅出Pandas:利用Python进行数据处理与分析》
书籍数据集:
https://www.gairuo.com/file/data/dataset/team.xlsx
https://www.gairuo.com/file/data/dataset/sample-salesv3.xlsx
https://www.gairuo.com/file/data/dataset/GDP-China.csv
https://www.gairuo.com/file/data/dataset/countries-aggregated.csv
https://www.gairuo.com/file/data/dataset/iris.data

1.快速入门

pandas支持数据读取、查看、查找【筛选】、分组聚合、数学统计、可视化【GET,这点之前忽略了】、输出导出等。练习练习,沉住气,虽然这部分已经非常熟练了。

# %%
# 《深入浅出Pandas:利用Python进行数据处理与分析》配套数据集
data_urls = """
https://www.gairuo.com/file/data/dataset/team.xlsx
https://www.gairuo.com/file/data/dataset/sample-salesv3.xlsx
https://www.gairuo.com/file/data/dataset/GDP-China.csv
https://www.gairuo.com/file/data/dataset/countries-aggregated.csv
https://www.gairuo.com/file/data/dataset/iris.data
"""

# %%
# 下载数据集
import os
data_dir = './datasets/'
for url in data_urls.split():
    os.system(f"wget -O {data_dir}/{url.rsplit('/')[-1]} {url}")

# %%
# 初步认识数据
import pandas as pd
df = pd.read_excel(os.path.join(data_dir,'team.xlsx'))  # 读取数据,xlsx读取可能会缺依赖,根据提示conda或pip安装
n = 3  # 准备查看的数据量
df.head(n)  # 查看前n条

# %%
df.tail(n)  # 尾部n条

# %%
df.sample(n)  # 随机三条

# %%
df.shape, df.dtypes, df.axes, df.columns  # 分布为数据行列数、各字段数据类型、行列名、列名

# %%
df.info()  # 数据的一些基本信息

# %%
df.describe()  # 数据的数学统计信息:

# %%
df.set_index('name', inplace=True)  # 将字段"name"建立为索引,inplace表示原表修改,pandas常用参数
df 

# %%
# 列选择
df['Q1']  # 选择'Q1'列, 列选择方法
# or
df.Q1  # 需注意的是,当字段名Q1包含一些特殊字符,比如空格、:时,此方法失效
df[['Q1','Q2']]  # 多列选择,此方法也可以用于交换不同列的顺序

# %%
# 行选择
df[df.index=='Ack']  # 前面已经将name字段标记为索引
# 支持分片,类似列表
df[:10]  # 前10行

# %%
# 图,可视化
df.Q1.plot()

# %%
# 饼图
df.loc['Ben','Q1':'Q4'].plot.pie()

# %%
# 排序
df.sort_values(['Q1', 'Q2'], ascending=[False, True])  # 可单列,也可以多列排序

# %%
# 分组聚合
df.groupby(by='team').sum()
# 转置
df.groupby(by='team').sum()

# %%
df['total'] = df.apply(lambda x:sum(x['Q1':'Q4']), axis=1)  # axis= 0 表示对横轴,axis=1表示对纵轴方向 数据进行操作,这里有点绕,横轴方向数据操作表现为对列操作[横向为各个列数据],纵轴方向数据操作表现为对行操作[纵向为行数据]
df
# %%
df.mean(axis=0)  # axis默认为0,对横轴操作,返回各列的均值
df.mean(axis=1)   # 纵轴操作,返回各行的均值
# or
df.mean(1)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82

2.数据结构

数据结构:组织数据、存储数据的方式。
Python:Python数据类型,数字、字符、列表、元组、字典、集合等。【熟悉和精通之间】
Numpy:高性能矩阵运算的课,Pandas的依赖,掌握该部分内容不是学习pandas的先决条件。【后续学习,科学计算的重要库】。
Numpy数据结构:ndarray【存储数据的多维数组】、ufunc【处理数组的函数】
Pandas数据结构:Series【带标签的一维数组】、DataFrame【二维数据结构,矩阵,有行列名】,重要,pandas的基础。
数据创建:可以从列表、字典等方法生成series和DataFrame
常见数据类型

  • float,浮点型
  • int,整型
  • bool,布尔型
  • 几个时间日期的类型:
  • datetime64[ns]
  • datetime64[ns,tz]
  • timedelta64[ns]
  • timedelta64[ns]
    -category 【还未用过,盲区】
    -object
    -string

支持数据类型判断:

pd.api.types.is_bool_dtype(s)  # 布尔判断,此类的类型判断还有很多
  • 1
本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/789536
推荐阅读
相关标签
  

闽ICP备14008679号