Pandas 教程学习笔记

一、Pandas简介

Pandas是Python编程语言的一个数据处理库,提供了快速,灵活和富有表现力的数据结构,旨在使数据清洗和分析变得简单直观。

它为Python程序员提供了高级数据结构和各种数据操作工具。Pandas的核心是两个类:Series和DataFrame。这两个类可以让用户用一种简单直观的方式处理数据。

二、Pandas的数据结构

1、Series

Series是一种类似于数组的数据结构,它由一组数据(各种NumPy数据类型)以及与之相关的一组标签(即索引)组成。Pandas的Series对象可以储存任何类型的数据,并且它们可以使用Pandas的各种方法进行操作。

下面是一个Series的创建示例:

pythonCopy Code
import pandas as pd data = pd.Series([0.25, 0.5, 0.75, 1.0]) print(data)

输出结果如下:

Copy Code
0 0.25 1 0.50 2 0.75 3 1.00 dtype: float64

2、DataFrame

DataFrame是Pandas中的主要数据结构,它是一个带有标签轴(行和列)的二维数据结构,其中每一列可以是不同的类型(整数,浮点数,字符串等)。

下面是一个DataFrame的创建示例:

pythonCopy Code
import pandas as pd data = {'name': ['Alice', 'Bob', 'Charlie', 'David'], 'age': [25, 32, 18, 47], 'country': ['USA', 'China', 'Canada', 'Brazil']} df = pd.DataFrame(data) print(df)

输出结果如下:

Copy Code
name age country 0 Alice 25 USA 1 Bob 32 China 2 Charlie 18 Canada 3 David 47 Brazil

三、Pandas的常用操作

1、数据的读取与写入

Pandas可以读写多种格式的文件,包括CSV、Excel、JSON等。其中,read_csv()和to_csv()方法用于CSV文件处理,read_excel()和to_excel()方法用于Excel文件处理,read_json()和to_json()方法用于JSON文件处理。

pythonCopy Code
# CSV文件读取与写入 import pandas as pd # 读取CSV文件 data = pd.read_csv('data.csv') # 将数据写入CSV文件 data.to_csv('new_data.csv', index=False) # Excel文件读取与写入 # 读取Excel文件 data = pd.read_excel('data.xlsx') # 将数据写入Excel文件 data.to_excel('new_data.xlsx', index=False) # JSON文件读取与写入 # 读取JSON文件 data = pd.read_json('data.json') # 将数据写入JSON文件 data.to_json('new_data.json', orient='records')

2、数据的选取和过滤

数据的选取和过滤是Pandas中常用的数据操作之一。可以使用loc和iloc方法对DataFrame进行选取和过滤。

pythonCopy Code
import pandas as pd data = {'name': ['Alice', 'Bob', 'Charlie', 'David'], 'age': [25, 32, 18, 47], 'country': ['USA', 'China', 'Canada', 'Brazil']} df = pd.DataFrame(data) # 选取name列的数据 print(df['name']) # 选取前两行数据 print(df.loc[:1]) # 筛选age大于30的行 print(df[df['age'] > 30])

3、数据的处理与运算

Pandas提供了多种数据处理和运算的方法,包括去重、排序、合并、分组等。

pythonCopy Code
import pandas as pd # 数据的去重与排序 data = {'name': ['Alice', 'Bob', 'Charlie', 'David', 'Alice'], 'age': [25, 32, 18, 47, 25], 'country': ['USA', 'China', 'Canada', 'Brazil', 'USA']} df = pd.DataFrame(data) print(df.drop_duplicates()) # 去除重复行 print(df.sort_values(by='age', ascending=False)) # 按照age列排序 # 数据的合并与分组 data1 = {'name': ['Alice', 'Bob', 'Charlie'], 'age': [25, 32, 18]} data2 = {'name': ['David', 'Emma', 'Frank'], 'age': [47, 23, 31]} df1 = pd.DataFrame(data1) df2 = pd.DataFrame(data2) print(pd.concat([df1, df2])) # 数据合并 print(df.groupby('country').mean()) # 按照country列分组并求平均值

四、总结

本文介绍了Pandas的数据结构、常用操作以及实例,Pandas是处理和分析数据的重要工具,在数据清洗和分析方面有着广泛的应用。