📅  最后修改于: 2023-12-03 15:03:18.878000             🧑  作者: Mango
Numpy 和 Pandas 是 Python 中重要的数据处理和分析库。Numpy 提供了用于在 Python 中进行科学计算的基础构建模块,而 Pandas 构建于 Numpy 的基础之上,提供了更多高级的数据分析功能。
在本指南中,我们将介绍 Numpy 和 Pandas 的一些常用功能和技巧,包括:
Numpy 的核心是多维数组数组对象 ndarray
,我们可以使用 numpy.array()
方法创建一个数组:
import numpy as np
# 创建一个数组
arr = np.array([1, 2, 3, 4, 5])
print(arr)
输出:
[1 2 3 4 5]
Numpy 数组支持与标量、列表、数组的数学运算:
# 与标量运算
arr = np.array([1, 2, 3, 4, 5])
print(arr + 1)
# 与列表运算
print(arr + [1, 1, 1, 1, 1])
# 与数组运算
arr2 = np.array([1, 1, 1, 1, 1])
print(arr + arr2)
输出:
[2 3 4 5 6]
[2 3 4 5 6]
[2 3 4 5 6]
数组元素的访问方式与列表相似,可以使用下标,也可以使用切片:
# 访问单个元素
arr = np.array([1, 2, 3, 4, 5])
print(arr[0])
# 切片
print(arr[1:3])
输出:
1
[2 3]
Numpy 提供了一些数组操作方法:
# 生成一个矩阵
arr2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(arr2d)
# 转置
print(arr2d.T)
# 矩阵乘法
print(np.dot(arr2d, arr2d.T))
# 平均值
print(np.mean(arr2d))
# 标准差
print(np.std(arr2d))
输出:
[[1 2 3]
[4 5 6]
[7 8 9]]
[[1 4 7]
[2 5 8]
[3 6 9]]
[[ 14 32 50]
[ 32 77 122]
[ 50 122 194]]
5.0
2.581988897471611
Pandas 中内置了多种数据读取格式,可以轻松地读取不同的文件格式,如 csv
格式、Excel
格式、SQL
数据库等。通过 pandas.read_csv()
方法读取 csv
文件:
import pandas as pd
# 读取 csv 文件
df = pd.read_csv('data.csv')
# 打印前 5 行数据
print(df.head())
输出:
id name age height
0 1 Bob 25 175
1 2 Mike 28 180
2 3 Tom 30 185
3 4 Jack 22 170
4 5 Alex 26 172
我们可以使用 Pandas 提供的数据筛选方法,对数据进行处理:
# 筛选满足条件的数据
df_filtered = df[df['age'] > 25]
# 按照年龄排序
df_sorted = df.sort_values(by='age', ascending=False)
用 Pandas 可以很方便地对数据进行聚合和透视操作。
# 按照年龄分组求平均值
df_grouped = df.groupby('age').mean()
# 数据透视
df_pivot = pd.pivot_table(df, index=['age'], values=['height'])
Pandas 中自带 Matplotlib 库,可以方便地对数据进行可视化:
# 导入绘图库
import matplotlib.pyplot as plt
# 绘制柱状图
df.plot(kind='bar', x='name', y='age')
# 展示图像
plt.show()
输出: