Python数据挖掘Pandas详解

  • Post category:Python

Python数据挖掘Pandas详解

什么是Pandas

Pandas是一种Python库,用于快速、易于操作、灵活且有表现力的数据结构,适用于广泛的数据任务。Pandas的主要目的是为了处理结构化数据,尤其是表格型数据,但它也可以处理时间序列数据等等。

安装Pandas

在安装Pandas之前,请先确保你已经安装了Python。

使用以下命令可以安装Pandas:

pip install pandas

Pandas的数据结构

Pandas提供了两种基本的数据结构:Series和DataFrame。

Series

Series是一种一维数组,可以存储整数、浮点数和字符串等类型的数据。Series具有索引,在Series中取值时,可以使用索引来获取。以下是创建Series的示例:

import pandas as pd

# 根据列表创建Series
num_list = [1,2,3,4,5]
num_series = pd.Series(num_list)
print(num_series)

# 根据字典创建Series
name_dict = {'Tom':60, 'Jim':70, 'Lucy':80}
name_series = pd.Series(name_dict)
print(name_series)

输出结果:

0    1
1    2
2    3
3    4
4    5
dtype: int64
Tom     60
Jim     70
Lucy    80
dtype: int64

DataFrame

DataFrame是一种二维表格型的数据结构。可以将DataFrame看作是一组Series组成的字典,Series的长度相同。DataFrame具有行和列的索引,可以执行许多操作,例如重建索引、按值排序、选取、插入、删除、合并、统计等。以下是创建DataFrame的示例:

import pandas as pd

# 创建DataFrame
data = {'name':['Tom', 'Jim', 'Lucy'], 'score':[60, 70, 80]}
df = pd.DataFrame(data)
print(df)

输出结果:

   name  score
0   Tom     60
1   Jim     70
2  Lucy     80

Pandas的数据操作

Pandas可以执行许多数据操作,例如筛选、分组、排序、连接、聚合等。

筛选

Pandas中可以使用loc()和iloc()函数切片操作,与Python List或Numpy Arrays非常相似。loc()函数根据行标签和列标签选择数据,而iloc()函数根据整数位置选择数据。

以下示例演示如何使用loc()和iloc()函数进行数据筛选:

import pandas as pd

# 创建DataFrame
data = {'name':['Tom', 'Jim', 'Lucy'], 'score':[60, 70, 80]}
df = pd.DataFrame(data)

# 筛选列
print(df['name'])

# 筛选行
print(df.loc[0])

# 筛选行和列
print(df.loc[0]['name'])

输出结果:

0     Tom
1     Jim
2    Lucy
Name: name, dtype: object
name     Tom
score     60
Name: 0, dtype: object
Tom

分组

使用Pandas的groupby()函数可以将数据集分组为不同的组,然后对每个组进行操作。

以下示例演示如何使用groupby()函数进行分组:

import pandas as pd

# 创建DataFrame
data = {'name':['Tom', 'Jim', 'Lucy'], 'subject':['Math', 'Chinese', 'English'], 'score':[60, 70, 80]}
df = pd.DataFrame(data)

# 按科目分组,求平均值
grouped = df.groupby('subject')
print(grouped.mean())

输出结果:

         score
subject       
Chinese     70
English     80
Math        60

总结

Pandas是一个强大的Python库,用于处理结构化、表格型数据,具有良好的灵活性和易用性。在上面的示例中,我们了解了Pandas的基本数据结构、如何使用Pandas进行数据筛选和分组。掌握了这些基础知识,我们可以使用Pandas轻松地处理和分析数据。