尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Python进阶教程:数据分析入门(NumPy与Pandas)
目录Python进阶教程数据分析入门NumPy与Pandas一、数据分析生态二、NumPy数值计算2.1 创建数组2.2 数组运算三、Pandas数据表处理3.1 Series 与 DataFrame3.2 读取与查看数据3.3 数据清洗3.4 分组聚合四、实战分析销售数据总结Python进阶教程数据分析入门NumPy与Pandas本文是Python 入门教程系列的第 8 篇。前面介绍了数据库操作本篇介绍数据分析的两大核心库NumPy与Pandas。一、数据分析生态Python 数据分析生态NumPy科学计算基础库提供多维数组Pandas数据分析利器提供 DataFrame 数据结构Matplotlib数据可视化Scikit-learn机器学习安装pip install numpy pandas matplotlib二、NumPy数值计算2.1 创建数组importnumpyasnp# 从列表创建arr1np.array([1,2,3,4,5])print(arr1,arr1.shape)# [1 2 3 4 5] (5,)# 二维数组arr2np.array([[1,2],[3,4]])print(arr2.shape)# (2, 2)# 常用创建方式zerosnp.zeros((2,3))# 全 0onesnp.ones((2,2))# 全 1randnp.random.rand(3)# 随机数range_arrnp.arange(0,10,2)# [0 2 4 6 8]2.2 数组运算importnumpyasnp anp.array([1,2,3])bnp.array([4,5,6])print(ab)# [5 7 9] 向量化运算无需循环print(a*2)# [2 4 6]print(a**2)# [1 4 9]print(a.mean())# 2.0 均值print(a.sum())# 6 求和print(a.max())# 3 最大值print(np.dot(a,b))# 32 点积三、Pandas数据表处理3.1 Series 与 DataFrameimportpandasaspd# Series一维数据带索引spd.Series([10,20,30],index[a,b,c])print(s[b])# 20# DataFrame二维表格data{姓名:[张三,李四,王五],年龄:[20,22,21],成绩:[88.5,92.0,95.5],}dfpd.DataFrame(data)print(df)print(df.shape)# (3, 3)print(df.columns)# 列名3.2 读取与查看数据importpandasaspd# 读取 CSV 文件# df pd.read_csv(data.csv)# 模拟数据dfpd.DataFrame({name:[Alice,Bob,Charlie,David],age:[25,30,35,40],salary:[50000,60000,70000,80000],})print(df.head())# 前 5 行print(df.info())# 数据概览print(df.describe())# 统计描述print(df[age].mean())# 某列均值 32.5print(df[df[salary]60000])# 条件筛选3.3 数据清洗importpandasaspdimportnumpyasnp dfpd.DataFrame({name:[Alice,None,Charlie],age:[25,None,35],score:[88,92,None],})print(df.isnull().sum())# 查看缺失值dfdf.dropna()# 删除含缺失值的行dfdf.fillna(0)# 或用 0 填充缺失值# 新增计算列df[age_plus]df[age]13.4 分组聚合importpandasaspd dfpd.DataFrame({部门:[技术,技术,市场,市场,市场],员工:[A,B,C,D,E],工资:[10000,12000,8000,9000,9500],})# 按部门分组求平均工资groupeddf.groupby(部门)[工资].mean()print(grouped)# 市场 8833.33# 技术 11000.00# 多列聚合print(df.groupby(部门).agg({工资:[mean,max,sum]}))四、实战分析销售数据importpandasaspd# 模拟一份销售数据salespd.DataFrame({日期:pd.date_range(2026-01-01,periods30),商品:[f商品{i%31}foriinrange(30)],销量:[20i%7*5foriinrange(30)],金额:[100i*3foriinrange(30)],})print( 数据概览 )print(sales.describe())print( 各商品总销量 )print(sales.groupby(商品)[销量].sum())print( 销量最高的 3 天 )print(sales.nlargest(3,销量)[[日期,销量]])print( 总销售额 )print(f{sales[金额].sum():.0f} 元)总结本篇介绍了 NumPy 数组运算和 Pandas 的 Series、DataFrame、数据清洗、分组聚合并用销售数据分析串联实战。下一篇将介绍Web 开发入门Flask敬请期待
RELATED

相关推荐

HTTP与HTTPS:加密通信与安全实践详解

HTTP与HTTPS:加密通信与安全实践详解

1. HTTP与HTTPS的本质差异:从明文传输到加密通信 当你在浏览器地址栏输入http://example.com和https://example.com时,看似只是多了一个字母"s"的区别,背后却是完全不同的数据传输机制。HTTP(HyperText Transfer Protoc…

📅 2026/9/8 13:52:08
电动汽车快充时间为何总比宣传长?五大核心因素深度解析

电动汽车快充时间为何总比宣传长?五大核心因素深度解析

1. 从“官方数据”到“现实体验”的落差每次看到新车发布会上,厂家用醒目的字体打出“30分钟从30%充至80%”这样的充电数据,心里总会涌起一股期待。然而,当你真正把车开到充电站,插上快充枪,看着手机App上预估的充满时…

📅 2026/9/1 9:34:19
豪华车价格战背后的市场逻辑:从品牌溢价到价值驱动的转变

豪华车价格战背后的市场逻辑:从品牌溢价到价值驱动的转变

1. 豪华车市场“价格战”的深层逻辑:从“面子”到“里子”的转变去年,如果你走进任何一家豪华品牌的4S店,最直观的感受可能不是展厅里炫酷的新车,而是销售顾问递上来的那份“诚意满满”的报价单。动辄八折、七五折,甚至…

📅 2026/8/31 23:11:55
MORE NEWS

更多资讯

📰

给AI对话加跨会话记忆:从语义提取到向量召回的设计与实践

做AI辅助开发的朋友应该都有同感:同一个项目聊到第三周,新开一个会话,AI完全不记得你两周前让它梳理的那套模块边界,也不记得你已经拍板过的技术选型。你只能重新粘贴一遍背景,重新交代一遍约束,时间全耗在…

📰

智慧城市三维可视化多端协同技术解析

1. 项目背景与核心挑战 在智慧城市建设的浪潮中,"城市安全大脑"作为中枢神经系统,承担着实时监控、预警分析和应急指挥的重任。而指挥大屏则是这套系统的"眼睛"——决策者通过它直观掌握城市运行态势。但传统方案面临一个尴尬的技术…

📰

一氧化碳报警器法规解析与安装指南

1. 项目概述:一氧化碳报警器的强制安装背景 去年冬天,我邻居家发生的一起事故让我至今心有余悸。半夜两点接到电话说整栋楼在疏散,原因是某户燃气热水器泄漏导致一氧化碳浓度超标。当时消防员破门而入时,屋内两位老人已经出现中毒…

📰

claude-mem:为Claude CLI注入长期记忆的开源工具

你有没有过这种体验:用官方终端版 Claude 干活,今天聊完的项目背景、技术选型、代码规范,明天新开会话它全忘了,你又得把同样的话重复一遍。这不是你操作有问题,而是这类对话工具天然的“无状态”特性——每次会话都是…

📰

Web开发中的随机图片访问技术实现与优化

1. 项目概述"访问随机图片地址"这个看似简单的需求,实际上涉及到了网络请求、资源管理、性能优化等多个技术领域。作为一名长期从事Web开发的工程师,我发现很多初级开发者容易低估这类功能的实现复杂度。本文将从一个实际项目经验出发&#xf…

📰

agency-agents:面向复杂业务的多智能体协同决策架构

1. 项目概述:这不是一个“代理”,而是一套协同决策系统“agency-agents”这个词组乍看像拼写错误,或是某个被截断的英文短语,但放在当前技术演进语境下,它其实指向一个正在快速成型的新范式——具备自主目标感知、环境…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬