浅析pandas 数据结构中的DataFrame

yizhihongxing

以下是浅析 Pandas 数据结构中的 DataFrame 的完整攻略。

什么是DataFrame

DataFrame 是 Pandas 库中最常用的数据结构之一,类似于 Excel 中的数据表格。DataFrame 可以看作是由多个 Series 组成的,每个 Series 代表着一列数据,而 DataFrame 中的每行数据则对应着多个 Series 中相同位置的元素。

创建DataFrame

创建 DataFrame 的方法有很多种,最常见的方法是通过传入字典来创建,例如:

import pandas as pd

data = {'姓名': ['张三', '李四', '王五'],
        '年龄': [28, 21, 32],
        '性别': ['男', '女', '男']}
df = pd.DataFrame(data)
print(df)

输出结果为:

   姓名  年龄 性别
0  张三  28  男
1  李四  21  女
2  王五  32  男

索引DataFrame

DataFrame 的索引方式有两种,一种是使用 loc,另一种是使用 iloc

loc 为例,如果我们想查看第一行数据,我们可以这样写:

first_row = df.loc[0]
print(first_row)

输出结果为:

姓名    张三
年龄    28
性别     男
Name: 0, dtype: object

修改DataFrame

DataFrame 中的数据是可以修改的,例如我们想将张三的年龄修改为 30,我们可以这样写:

df.loc[0, '年龄'] = 30
print(df)

输出结果为:

   姓名  年龄 性别
0  张三  30  男
1  李四  21  女
2  王五  32  男

示例说明

下面再举两个实际的例子来说明 DataFrame 的用法。

示例一

假设我们有一组关于学生体育成绩的数据,如下:

学号 姓名 年级 班级 性别 身高 体重 800m (s) 铅球(m)
001 张三 一年级 1 班 175 70 140 12
002 李四 二年级 3 班 163 50 180 8
003 王五 三年级 2 班 155 45 160 9
004 赵六 一年级 1 班 180 75 150 10
005 钱七 二年级 3 班 168 60 170 7

我们可以将这些数据读入到 DataFrame 中:

import pandas as pd

data = pd.read_excel('students_scores.xlsx')
df = pd.DataFrame(data)
print(df)

如果将上面的数据保存在students_scores.xlsx文件中,那么这段代码会输出如下内容:

   学号  姓名   年级   班级 性别   身高  体重  800m (s)  铅球(m)
0    1  张三  一年级  1 班  男  175  70        140      12
1    2  李四  二年级  3 班  男  163  50        180       8
2    3  王五  三年级  2 班  女  155  45        160       9
3    4  赵六  一年级  1 班  男  180  75        150      10
4    5  钱七  二年级  3 班  女  168  60        170       7

我们还可以使用 describe() 方法查看这些数据的基本统计信息:

print(df.describe())

输出结果为:

            学号          身高         体重    800m (s)     铅球(m)
count  5.000000    5.000000   5.000000     5.000000   5.000000
mean   3.000000  168.200000  60.000000   160.000000   9.200000
std    1.581139    9.183772  14.142136    22.023747   2.774887
min    1.000000  155.000000  45.000000   140.000000   7.000000
25%    2.000000  163.000000  50.000000   150.000000   8.000000
50%    3.000000  168.000000  60.000000   160.000000   9.000000
75%    4.000000  175.000000  70.000000   170.000000  10.000000
max    5.000000  180.000000  75.000000   180.000000  12.000000

示例二

假设我们有一个有关电影票房收入的数据集,如下:

电影名称 票房收入(万元) 上映天数 评分
复仇者联盟4:终局之战 42949 92 8.4
哪吒之魔童降世 36287 161 8.7
飞驰人生 20436 108 7.9
红海行动 15230 82 8.0
我和我的祖国 15204 80 8.0
美人鱼 14492 67 6.0
海王 13772 68 7.1
武林外传 12109 53 8.9
煎饼侠 10533 27 6.0
战狼2 9846 70 6.0

我们可以将这些数据读入到 DataFrame 中:

import pandas as pd

data = {'电影名称': ['复仇者联盟4:终局之战', '哪吒之魔童降世', '飞驰人生', '红海行动', '我和我的祖国', '美人鱼', '海王', '武林外传', '煎饼侠', '战狼2'],
        '票房收入(万元)': [42949, 36287, 20436, 15230, 15204, 14492, 13772, 12109, 10533, 9846],
        '上映天数': [92, 161, 108, 82, 80, 67, 68, 53, 27, 70],
        '评分': [8.4, 8.7, 7.9, 8.0, 8.0, 6.0, 7.1, 8.9, 6.0, 7.0]}
df = pd.DataFrame(data)
print(df)

输出结果为:

             电影名称  票房收入(万元)  上映天数   评分
0  复仇者联盟4:终局之战        42949     92  8.4
1        哪吒之魔童降世        36287    161  8.7
2            飞驰人生        20436    108  7.9
3            红海行动        15230     82  8.0
4         我和我的祖国        15204     80  8.0
5              美人鱼        14492     67  6.0
6               海王        13772     68  7.1
7            武林外传        12109     53  8.9
8              煎饼侠        10533     27  6.0
9              战狼2         9846     70  7.0

我们可以根据票房收入对电影进行排序:

df = df.sort_values('票房收入(万元)', ascending=False)
print(df)

输出结果为:

             电影名称  票房收入(万元)  上映天数   评分
0  复仇者联盟4:终局之战        42949     92  8.4
1        哪吒之魔童降世        36287    161  8.7
2            飞驰人生        20436    108  7.9
3            红海行动        15230     82  8.0
4         我和我的祖国        15204     80  8.0
5              美人鱼        14492     67  6.0
6               海王        13772     68  7.1
7            武林外传        12109     53  8.9
8              煎饼侠        10533     27  6.0
9              战狼2         9846     70  7.0

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅析pandas 数据结构中的DataFrame - Python技术站

(0)
上一篇 2023年5月14日
下一篇 2023年5月14日

相关文章

  • Python模拟简易版淘宝客服机器人的示例代码

    接下来我会详细讲解如何实现一个Python模拟简易版淘宝客服机器人并提供两条示例说明。 准备工作 在开始实现之前需要准备以下材料: Python编程环境,可以使用Anaconda / PyCharm等工具。 需要安装第三方库chatterbot用于机器人的拟合训练和应答生成。 安装命令:pip install chatterbot 基础步骤 在准备好环境后,…

    python 2023年6月13日
    00
  • pandas中read_sql使用参数进行数据查询的实现

    pandas是一款强大的Python数据分析框架。read_sql是pandas框架中用于查询数据库数据并返回结果的函数之一。通过read_sql函数,可以轻松地将SQL语句转换为pandas DataFrame。本篇攻略将会详细讲解如何使用pandas中read_sql函数进行参数化的数据查询。 准备工作 在使用pandas中的read_sql函数进行数据…

    python 2023年5月14日
    00
  • pandas 数据实现行间计算的方法

    “pandas数据实现行间计算的方法”指的是如何使用pandas进行数据计算,其中涉及到行与行之间的计算。以下是详细的攻略: 1. 加载数据 首先,我们需要使用pandas的读取数据函数,将数据加载到我们的代码中。在此我将以csv文件为例进行说明,具体代码如下: import pandas as pd # 读取csv文件 df = pd.read_csv(&…

    python 2023年5月14日
    00
  • Python使用pyodbc访问数据库操作方法详解

    Python使用pyodbc访问数据库操作方法详解 介绍 在Python中,pyodbc是一个广泛使用的用于连接数据库和执行SQL查询的库。使用pyodbc,我们可以轻松地连接各种不同类型的数据库,如Microsoft SQL Server、MySQL和Oracle等。在本文中,我们将详细讲解如何使用pyodbc连接数据库和执行查询。 安装pyodbc 要使…

    python 2023年5月14日
    00
  • Pandas标记删除重复记录的方法

    Pandas中标记删除重复记录的方法主要是通过drop_duplicates函数来实现,该函数可以去除DataFrame对象中的重复行,有以下几个常用参数: subset: 指定需要检查重复值的列。 keep: 取值可为 first, last, False,表示在去除重复值时保留哪一个(第一个,最后一个或全删除)。 inplace: 取值可为 True 或…

    python 2023年6月13日
    00
  • Python MySQL数据库连接池组件pymysqlpool详解

    Python MySQL数据库连接池组件pymysqlpool详解 介绍 pymysqlpool是一个Python MySQL数据库连接池组件,它能够有效地管理多个数据库连接并提高应用程序的性能。它简单易用,并提供了完整的文档以及示例代码。 安装 可以使用pip来安装pymysqlpool: pip install pymysqlpool 使用 连接池初始化…

    python 2023年6月13日
    00
  • python pandas query的使用方法

    当我们需要从一份数据中查询出符合特定条件的数据时,就可以使用pandasi的query功能了。query功能基于类似SQL的语法,在python中使用起来非常方便。下面是python pandas query的使用方法的完整攻略: 1. 确认数据格式 在使用query方法之前,我们需要确保数据是DataFrame格式。如果数据并不是DataFrame,请先使…

    python 2023年5月14日
    00
  • Python自动化办公技巧分享

    Python自动化办公技巧分享 本文介绍如何使用Python来自动化办公,提高工作效率。主要包括以下技巧: 一、操作Excel 使用openpyxl模块操作Excel表格。 import openpyxl # 加载Excel工作簿 workbook = openpyxl.load_workbook(‘example.xlsx’) # 获取Sheet对象 sh…

    python 2023年6月13日
    00
合作推广
合作推广
分享本页
返回顶部