数据清洗与分析工具详解:Pandas 和 NumPy 的全面教程
创作时间:
作者:
@小白创作中心
数据清洗与分析工具详解:Pandas 和 NumPy 的全面教程
引用
CSDN
1.
https://blog.csdn.net/m0_70474954/article/details/143325268
在数据科学的世界中,数据清洗与分析是至关重要的步骤。Pandas 和 NumPy 是 Python 中最常用的两个库,它们为数据处理提供了强大的功能。本文将为你详细介绍这两个库的使用方法,配合实例和图示,帮助你深入理解并掌握数据清洗与分析的技巧。
1. NumPy 概述
1.1 NumPy 安装
NumPy 是一个用于科学计算的基础库。你可以通过以下命令安装:
pip install numpy
1.2 NumPy 基础
NumPy 提供了强大的 N 维数组对象 ndarray,以及用于数组操作的函数。
创建 NumPy 数组
import numpy as np
# 创建一维数组
arr1 = np.array([1, 2, 3, 4, 5])
print(arr1)
# 创建二维数组
arr2 = np.array([[1, 2, 3], [4, 5, 6]])
print(arr2)
数组运算
NumPy 支持元素级运算:
# 数组加法
arr3 = arr1 + 5
print(arr3)
# 数组乘法
arr4 = arr2 * 2
print(arr4)
数组切片
# 切片操作
print(arr1[1:4]) # 输出 [2 3 4]
print(arr2[:, 1]) # 输出第二列 [2 5]
2. Pandas 概述
2.1 Pandas 安装
Pandas 是一个用于数据分析的库,提供了数据结构和数据分析工具。安装方法如下:
pip install pandas
2.2 Pandas 基础
Pandas 主要有两个数据结构:Series 和 DataFrame。
创建 Pandas Series
import pandas as pd
# 创建 Series
s = pd.Series([1, 2, 3, 4, 5])
print(s)
创建 Pandas DataFrame
# 创建 DataFrame
data = {
'name': ['Alice', 'Bob', 'Charlie'],
'age': [25, 30, 35],
'city': ['New York', 'Los Angeles', 'Chicago']
}
df = pd.DataFrame(data)
print(df)
3. 数据清洗
数据清洗是数据分析的重要步骤,确保数据的质量和完整性。
3.1 处理缺失值
缺失值会影响分析结果,Pandas 提供了多种处理方法。
# 创建包含缺失值的 DataFrame
data_with_nan = {
'name': ['Alice', 'Bob', None],
'age': [25, None, 35],
'city': ['New York', 'Los Angeles', None]
}
df_nan = pd.DataFrame(data_with_nan)
# 查看缺失值
print(df_nan.isnull())
# 删除缺失值
df_cleaned = df_nan.dropna()
print(df_cleaned)
# 用均值填充缺失值
df_nan['age'].fillna(df_nan['age'].mean(), inplace=True)
print(df_nan)
3.2 数据类型转换
有时需要转换数据类型以便于分析。
# 将年龄列转换为整数类型
df['age'] = df['age'].astype(int)
print(df.dtypes)
3.3 重命名列
# 重命名列
df.rename(columns={'name': 'full_name'}, inplace=True)
print(df)
4. 数据分析
数据分析是从数据中提取有用信息的过程。
4.1 数据选择与过滤
可以根据条件选择数据。
# 选择年龄大于30的人
filtered_df = df[df['age'] > 30]
print(filtered_df)
4.2 数据分组与聚合
Pandas 提供了强大的分组功能。
# 按城市分组并计算平均年龄
grouped = df.groupby('city')['age'].mean()
print(grouped)
4.3 数据可视化
结合 Matplotlib 库进行数据可视化。
pip install matplotlib
import matplotlib.pyplot as plt
# 简单的柱状图
df['city'].value_counts().plot(kind='bar')
plt.title('Number of People by City')
plt.xlabel('City')
plt.ylabel('Count')
plt.show()
5. 实战案例:数据清洗与分析
假设我们有一个 CSV 文件 data.csv,内容如下:
name,age,city
Alice,25,New York
Bob,,Los Angeles
Charlie,35,Chicago
David,,New York
数据清洗与分析步骤
- 读取数据
df = pd.read_csv('data.csv')
print(df)
- 处理缺失值
df['age'].fillna(df['age'].mean(), inplace=True)
- 数据分析
# 按城市分组并计算平均年龄
average_age = df.groupby('city')['age'].mean()
print(average_age)
- 数据可视化
average_age.plot(kind='bar')
plt.title('Average Age by City')
plt.xlabel('City')
plt.ylabel('Average Age')
plt.show()
6. 总结与展望
本文详细介绍了 NumPy 和 Pandas 的基本用法,涵盖了数据清洗与分析的各个方面。通过示例和图表,希望能够帮助你更好地理解和使用这些工具。
进一步学习
- 深入学习数据可视化工具,如 Seaborn 和 Plotly。
- 探索数据分析的高级主题,如时间序列分析和机器学习。
希望这篇教程能为你的数据分析之旅提供帮助!如果有任何问题或想法,欢迎在评论区留言。
热门推荐
治疗儿童多动症,可乐定和哌甲酯该怎么选?
一分钟教你看懂甲功三项结果,TSH、FT3、FT4正常值各不同
降息落空!不哭,深圳公积金贷款新政,最高可贷220万!
盲目过量补充叶酸,不利于健康
基本的编程概念
怎样处理键盘进水后无法正常使用的问题(键盘进水后的处理方法及注意事项)
出租房屋如何判断对方是否是中介?租房注意事项全攻略
手机数据备份到电脑:快捷方便的操作指南
购买国债逆回购如何提高收益?
在全球气候变迁中,19世纪清朝是如何走向衰败的?
新疆库尔勒市有哪些好吃的
美缝如何清理,这些小技巧让你的家焕然一新
做人工智能需要掌握哪些数学基础?
神话故事嫦娥奔月:象征与寓意的深度解读
如何购买无线蓝牙鼠标
工作经历怎么写?掌握STAR法则,轻松展示职业成就
减震器技术要求详解:从材料到维护的全方位指南
2025北京赛事日历正式发布,全年198项重点赛事逐月排布
伤病和转会影响曼城,高层该规划没有瓜迪奥拉的日子了
软考高级资格是否等于高级工程师或者是否拥有职称?
火车车厢信息识别系统的工作原理与应用
144Hz显示器显示60Hz怎么办?5个实用解决方案帮你轻松应对
经常吃萝卜对胃有好处?医生忠告:胃喜欢4种蔬菜,建议平时常吃
兰州大学成果获“23年中医药抗衰老十大高影响力研究”
强直性脊柱炎病友的锻炼指南:你真的做对了吗?
《放羊的星星》男二号李威卷入杀人案,涉嫌教唆骗取200万,录音曝光成铁证
榆属(榆树)植物特性及经济价值解析
血氧饱和度多少是正常的?
如何调整饮食来实现减肥
首次!中国国际形象全球调查报告发布