• [Pandas] Pandas数据结构


    美图欣赏2022/06/25

    Pandas有2种数据结构,分别是SeriesDataFrame

    1.Series

    Series类似表格中的一个列(column),类似于一维数组,可以保存任何数据类型

    Series由索引(index)组成

    提示

    索引起到解释、定位数据的作用,Series是Pandas最基础的数据结构

    语法

    1. import pandas as pd
    2. pd.Series(data, index, dtype, name, copy)

    参数说明 

    data: 一组数据(ndarray类型)

    index: 数据索引标签,如果不指定,默认从0开始

    dtype: 数据类型,默认会自己判断

    name: 设置名称

    copy: 拷贝数据,默认为False

    实例

    1. import pandas as pd
    2. arr = [1, 2, 3]
    3. res1 = pd.Series(arr)
    4. # 根据索引值读取数据
    5. res1[1] # 2
    6. # 指定索引值
    7. res2 = pd.Series(arr, index = ['x','y','z'])
    8. # 根据索引值读取数据
    9. res2['y'] # 2

    res1 

    从上图可知,如果没有指定索引,索引值就从0开始

    res2

    使用key/value对象,类似字典来创建Series 

    1. import pandas as pd
    2. dicts = {1: "Odin", 2: "Jack", 3: "Lee"}
    3. res3 = pd.Series(dicts)

    res3

    从上图可知,字典的key变成了索引值 

    如果我们只需要字典中的一部分数据,只需要指定需要数据的索引即可

    1. import pandas as pd
    2. dicts = {1: "Odin", 2: "Jack", 3: "Lee"}
    3. res4 = pd.Series(dicts, index = [1, 2])

    res4


    设置Series名称参数 

    1. import pandas as pd
    2. dicts = {1: "Odin", 2: "Jack", 3: "Lee"}
    3. pd.Series(dicts, index = [1, 2], name='Hudas')

    未设置Series名称参数

    1. import pandas as pd
    2. dicts = {1: "Odin", 2: "Jack", 3: "Lee"}
    3. pd.Series(dicts, index = [1, 2])

    2.DataFrame 

    DataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)

    DataFrame既有行索引也有列索引,它可以被看做由多个Series组成的字典(共同用一个索引)

    DataFrame是Pandas定义的一个二维数据结构

    DataFrame结构

    横向的称作行(row),一条数据就是指其中的一行

    纵向的称作列(column)字段,是一条数据的某个值

    第一行是表头或者叫字段名,类似于Python字典里的键,代表数据的属性

    第一列是索引,就是这行数据所描述的主体,也是这条数据的关键

    在一些场景下,表头称为列索引,索引称为行索引 

    语法

    1. import pandas as pd
    2. pd.DataFrame(data, index, columns, dtype, copy)

    参数说明

    data: 一组数据(ndarray、series, map, lists, dict 等类型)

    index: 索引值,或者可以称为行标签

    columns: 列标签,默认为 RangeIndex (0, 1, 2, …, n)

    dtype: 数据类型

    copy: 拷贝数据,默认为 False

    2.1 使用列表创建DataFrame

    1. import pandas as pd
    2. data = [['Odin',11],['Harry',12],['Lee',13]]
    3. df1 = pd.DataFrame(data,columns=['Name','Age'],dtype=float)

    df1

    2.2 使用ndarrays创建DataFrame

    1. import pandas as pd
    2. data = {'Name':['Hudas', 'Odin', 'Summer'], 'Age':[20, 21, 22]}
    3. df2 = pd.DataFrame(data)

    df2 

    2.3 使用字典key/value创建DataFrame

    1. import pandas as pd
    2. # 字典的key为列名 
    3. data = [{'a': 1, 'b': 2},{'a': 5, 'b': 10, 'c': 20}]
    4. df3 = pd.DataFrame(data)

    df3 

    1. import pandas as pd
    2. data1 = {
    3. "calories": [420, 380, 390],
    4. "duration": [50, 40, 45]
    5. }
    6. df4 = pd.DataFrame(data1, index = ["day1", "day2", "day3"])

    df4

  • 相关阅读:
    You have mail in /var/mail/root
    micropython驱动 黑莓轨迹球
    @ConfigurationProperties注解的使用
    C++ Reference: Standard C++ Library reference: C Library: cstdio: fread
    使用小程序制作一个飞机大战小游戏
    计算机网络 【HTTP--1】
    Opencv形态学——腐蚀、膨胀、开运算与闭运算、梯度运算、礼帽、黑帽
    Sentinel概述
    docker安装mysql
    力扣561. 数组拆分
  • 原文地址:https://blog.csdn.net/Hudas/article/details/125460045