Pandas中DataFrame常用操作指南

  • Post category:Python

下面我给你详细讲解一下“Pandas中DataFrame常用操作指南”的完整实例教程。

什么是Pandas中的DataFrame?

Pandas是一种Python的数据处理工具包,其中最核心的数据结构就是DataFrame。简单来说,DataFrame是一种数据表格,每列可以是不同的数据类型,类似于Excel表格或者数据库表格。

如何创建DataFrame?

可以通过多种方式来创建DataFrame,比如从csv文件、Excel文件、数据库中读取等等。这里演示一下如何通过字典来创建DataFrame。

import pandas as pd

# 创建一个字典
data = {'name': ['Lily', 'Lucas', 'John', 'Tom'],
        'age': [21, 25, 32, 27],
        'city': ['Beijing', 'Shanghai', 'New York', 'London']}

# 通过字典创建DataFrame
df = pd.DataFrame(data)

# 打印DataFrame内容
print(df)

输出结果如下:

    name  age      city
0   Lily   21   Beijing
1  Lucas   25  Shanghai
2   John   32  New York
3    Tom   27    London

以上代码演示了如何通过字典创建DataFrame,并且对于DataFrame的列名和顺序进行了控制。除了字典,还可以使用numpy数组、pandas的Series等方式来创建DataFrame。

DataFrame的常见操作

下面我们来演示DataFrame的常见操作方法。

1. 查看DataFrame格式

# 获取DataFrame的行数和列数
print("DataFrame的形状为:", df.shape)

# 查看DataFrame的前几行,默认值为5
print("DataFrame的前3行为:\n", df.head(3))

# 查看DataFrame的后几行,默认值为5
print("DataFrame的后2行为:\n", df.tail(2))

# 查看DataFrame的所有列
print("DataFrame的所有列为:\n", df.columns)

输出结果如下:

DataFrame的形状为: (4, 3)
DataFrame的前3行为:
     name  age      city
0   Lily   21   Beijing
1  Lucas   25  Shanghai
2   John   32  New York
DataFrame的后2行为:
    name  age    city
2  John   32  London
3   Tom   27  London
DataFrame的所有列为:
 Index(['name', 'age', 'city'], dtype='object')

2. 对DataFrame进行筛选

# 选择其中一列
print("选择name这一列:\n", df["name"])

# 选择多列
print("选择name和age这两列:\n", df[["name", "age"]])

# 选择age>=25的行
print("选择age>=25的行:\n", df[df["age"] >= 25])

# 选择特定的行
print("选择前两行:\n", df.head(2))

输出结果如下:

选择name这一列:
 0     Lily
1    Lucas
2     John
3      Tom
Name: name, dtype: object
选择name和age这两列:
     name  age
0   Lily   21
1  Lucas   25
2   John   32
3    Tom   27
选择age>=25的行:
     name  age      city
1  Lucas   25  Shanghai
2   John   32  New York
3    Tom   27    London
选择前两行:
     name  age      city
0   Lily   21   Beijing
1  Lucas   25  Shanghai

3. 对DataFrame进行排序

# 按照age升序排列
print("按照age升序排列:\n", df.sort_values("age"))

# 按照age降序排列
print("按照age降序排列:\n", df.sort_values("age", ascending=False))

输出结果如下:

按照age升序排列:
     name  age      city
0   Lily   21   Beijing
1  Lucas   25  Shanghai
3    Tom   27    London
2   John   32  New York
按照age降序排列:
     name  age      city
2   John   32  New York
3    Tom   27    London
1  Lucas   25  Shanghai
0   Lily   21   Beijing

总结

以上就是Pandas中DataFrame常用操作指南的介绍。DataFrame是Pandas中一个非常重要的概念,掌握好其使用方法对于数据处理和分析有着非常重要的意义。在实际使用过程中,还有更多其他的DataFrame操作方式,需要根据具体需求进行选择。