一文讲透Python函数的创建和调用

1.Python提供了函数作为完成某项工作的标准化代码块

Python本质上是一种编程语言,通过编写运行代码的方式实现工作目标。读者可以想象,如果针对机器学习或数据统计分析的每种方法或统计量计算都要用户自行编写代码,那么显然在很多情况下是无法满足用户便捷开展分析的要求的,用户体验也会远远不如Stata、SPSS等专业集成统计软件。所以,Python提供了函数作为完成某项工作的标准化代码块,达到标准化编写后反复调用、增加标准代码复用性、减少代码冗余、提升工作效率的目的。

2.Python函数的创建通过def()来完成

Python函数的创建通过def()来完成,基本语法格式为:

其中,functionname为函数名;parameterlist为可选参数,用于指定需要向函数中传递的参数,参数可以为一个或多个,多个参数之间使用英文逗号(,)分隔,也可以没有参数,但要保留def后面的一对空的小括号(());comments为可选参数,用来为函数指定注释,说明该函数的功能、要传递的参数作用等;functionbody为可选的,用于指定函数体,即该函数被调用后要执行的功能代码。如果函数有返回值,则要通过return语句返回。["""comments"""]和[functionbody]相对于def关键字需要保持一定程度的缩进。比如要创建一个计算长方形面积的函数,代码如下:

3.函数的调用

函数的调用通过执行该函数来完成,基本语法格式为:

其中,functionname为函数名;parametervalue为可选参数,用于指定向函数中传递的参数,参数可以为一个或多个,多个参数之间使用英文逗号(,)分隔,也可以没有参数,也要保留函数名后面的一对空的小括号(())。示例如下,输入以下代码并运行:

运行结果为:24。

4.Python数据分析或机器学习推荐两本入门级的图书

文章节选自《Python数据科学应用从入门到精通》(张甜 杨维忠 著 2023年11月新书 清华大学出版社)。

针对Python数据分析或机器学习推荐两本入门级的图书:《Python机器学习原理与算法实现》(杨维忠 张甜 著 2023年2月新书 清华大学出版社)《Python数据科学应用从入门到精通》(张甜 杨维忠 著 2023年11月新书 清华大学出版社)。这两本书的特色是在数据分析、机器学习各种算法的介绍方面通俗易懂,较少涉及数学推导,对数学基础要求相对不高,在python代码方面讲的很细致,看了以后根据自身需要选取算法、优化代码、科学调参。都有配套免费提供的源代码、数据文件和视频讲解,也有PPT、思维导图、习题等。

为什么说这两本书值得?首先说《Python机器学习原理与算法实现》(杨维忠 张甜 著 2023年2月新书 清华大学出版社),内容非常详实,包含了Python和机器学习,相当于一次获得了两本书。在讲解各类机器学习算法时,逐一详解用到的各种Python代码,针对每行代码均有恰当注释(这一点基本上是大多数书目做不到的)。恒丰银行总行副行长郑现中,山东大学经济学院教学实验中心主任 副教授 韩振,德勤华永会计师事务所 华文伟 合伙人,首创证券深圳分公司机构业务部 樊磊 总经理 中国准精算师,山东省农村信用社联合社数据管理项目组 郝路安 总监等一众大牛联袂推荐。这本书在出版之前曾开发成9次系列课程,在恒丰银行全行范围类开展培训,490人跟随杨维忠老师上课学习(课程限报490人),培训完成后课程在知鸟平台上回放超过3万人次。很多银行员工通过这些学习一下子就学会了Python,并且用于工作中开展数据分析、机器学习、数据可视化等,这本书也被多家商业银行选做数字化人才培训教材,成为银行员工的一本网红书。

《Python数据科学应用从入门到精通》一书,旨在教会读者实现全流程的数据分析,并且相对《Python机器学习原理与算法实现》一书增加了很多概念性、科普性的内容,进一步降低了学习难度。国务院发展研究中心创新发展研究部第二研究室主任杨超 ,山东大学经济学院金融系党支部书记、副主任、副教授、硕士生导师张博,山东管理学院信息工程学院院长 袁锋 教授、硕士生导师,山东大学经济学院刘一鸣副研究员、硕士生导师,得厚投资合伙人张伟民等一众大牛联袂推荐。书中全是干活,买这一本书相当于一下子得到了5本书(Python基础、数据清洗、特征工程、数据可视化、数据挖掘与建模),而且入门超级简单,不需要编程基础,也不需要过多数学推导,非常适用于零基础学生。全书内容共分13章。其中第1章为数据科学应用概述,第2章讲解Python的入门基础知识,第3章讲解数据清洗。第4~6章介绍特征工程,包括特征选择、特征处理、特征提取。第7章介绍数据可视化。第8~13章介绍6种数据挖掘与建模方法,分别为线性回归、Logistic回归、决策树、随机森林、神经网络、RFM分析。从数据科学应用和Python的入门,再到数据清洗与特征工程,最终完成数据挖掘与建模或数据可视化,从而可以为读者提供“从拿到数据开始,一直到构建形成最终模型或可视化报告成果”的一站式、全流程指导。

两本书随书赠送的学习资料也很多,包括全部的源代码、PPT、思维导图,还有10小时以上的讲解视频,每一章后面还有练习题及参考答案,还有学习群,相对于只看网络上的视频,一方面更加系统、高效,另一方面照着书一步步操作学起来也事半功倍。全网热销中,当当、京东等平台搜索“Python机器学习 杨维忠”“Python数据科学 杨维忠”即可。

《Python机器学习原理与算法实现》(杨维忠、张甜著,2023年2月,清华大学出版社),适用于学习Python/机器学习

《Python数据科学应用从入门到精通》(张甜 杨维忠 著 2023年11月新书 清华大学出版社)适用于学习数据分析、数据科学、数据可视化等。

创作不易,恳请多多点赞,感谢您的支持!也期待大家多多关注我,让我共同学习数据分析知识。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/213408.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

一款充电桩解决方案设计

一、基本的概述 项目由IP6536提供两路5V 1.5A 的USB充电口,IP6505提供一路最大24W的USB快充口支持QC3.0 / DCP / QC2.0 / MTK PE1.1 / PE2.0 / FCP / SCP / AFC / SFCP的快充协议,电池充电由type-C输入经过IP2326输出最高15W快充对电池进行充电&#xf…

VSCode 中将头文件和头文件函数分离,编译主函数跳出 undefined reference to 的问题解决

VSCode 编写 C (.h,.cpp 文件分离)代码,编写完成后,编译遇到了编译错误 undefined reference to xxx。 开始还以为使用了 -stdc20 而不能使用 #include “xxx.h" 方式头文件,但仔细一想虽然引入了 im…

18487.1 - 2015 电动汽车充电系统标准 第1部分 关键点梳理

一、部分知识介绍 1、连接方式 使用电缆和连接器将电动汽车接入电网(电源)的方法。 1.1、连接方式A 1.2、连接方式B 1.3、连接方式C 2、电动汽车控电设备 2.1、按照输出电压分类 1)交流 单相 220V,三相 380V. 2&#xff09…

随心玩玩(十)git

写在前面:研究生一年多了,一直浑浑噩噩的,在深度学习的泥潭挣扎了好久,终于走出了精神内耗的泥潭…好久没有写博客了,决定重新捡起来…记录一下学习吧~ 之前写了一篇git的博客,【github 从0开始的基本操作…

LLM大语言模型(一):ChatGLM3-6B试用

前言 LLM大语言模型工程化,在本地搭建一套开源的LLM,方便后续的Agent等特性的研究。 本机环境 CPU:AMD Ryzen 5 3600X 6-Core Processor Mem:32GB GPU:RTX 4060Ti 16G ChatGLM3代码库下载 # 下载代码库 ​git c…

分类预测 | Matlab实现FA-SVM萤火虫算法优化支持向量机的多变量输入数据分类预测

分类预测 | Matlab实现FA-SVM萤火虫算法优化支持向量机的多变量输入数据分类预测 目录 分类预测 | Matlab实现FA-SVM萤火虫算法优化支持向量机的多变量输入数据分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现FA-SVM萤火虫算法优化支持向量机的多变量…

搭建若依框架完成医疗项目 ——业务流程及页面展示

目录 一、搭建若依项目 1.1 快速了解 1.1.1 技术选型 1.1.2 内置功能 1.2 环境部署 二、医疗项目业务 2.1 门诊模块 2.2 住院模块 2.3 药房药库 2.4 表设计 三、项目展示 3.1 项目背景 3.2 门诊功能模块 3.2.1 患者档案 3.2.2 门诊卡信息 ​编辑 3.2.3 患者…

【文末送书】人工智能背景下的C++编程方向

欢迎关注博主 Mindtechnist 或加入【智能科技社区】一起学习和分享Linux、C、C、Python、Matlab,机器人运动控制、多机器人协作,智能优化算法,滤波估计、多传感器信息融合,机器学习,人工智能等相关领域的知识和技术。关…

Nginx转发内网Flv视频流

1、环境说明 Docker Nginx:1.21.5 实现Nginx ssl转发内网flv视频流 2、配置nginx.conf http {upstream live {server 10.10.10.10:8300;keepalive 64;}map $http_upgrade $connection_upgrade {default upgrade; close;}server {listen 80;listen 443…

echarts实现全国及各省市地图

echarts实现全国及各省市地图(内附地图json文件) 去阿里云就可以获取:[阿里云地理]:http://datav.aliyun.com/portal/school/atlas/area_selector#&lat31.769817845138945&lng104.29901249999999&zoom4(http://datav…

【自然语言处理】【大模型】VeRA:可调参数比LoRA小10倍的低秩微调方法

VeRA:可调参数比LoRA小10倍的低秩微调方法 《VeRA:Vector-based Random Matrix Adaptation》 论文地址:https://arxiv.org/pdf/2310.11454.pdf 相关博客 【自然语言处理】【大模型】VeRA:可调参数比LoRA小10倍的低秩微调方法 【自…

阿里微服务质量保障系列:性能监控

什么是性能监控,以及性能监控的对象有哪些。 伴随着突发流量、系统变更或代码腐化等因素,性能退化随时会发生。如在周年庆大促期间由于访问量暴涨导致请求超时无法下单;应用发布变更后,页面频繁卡顿导致客诉上升;线上…

Swing程序设计(7)JPane面板,滑动面板

文章目录 前言一、JPane面板,滑动面板是什么?二、实操展示 1.JPane面板2.JScrollPane面板总结 前言 该篇博客介绍Java的Swing程序中JPane面板以及,滑动面板的使用。面板的使用,各个组件在不同的面板上被不同地摆放,让插…

iceoryx(冰羚)-共享内存数据传输

上面的操作都是在共享内存中,发布进程拿到PublisherPortData对象,转换成PublisherPortUser对象,进行数据发送。 订阅进程拿到SubscriberPortData对象,转换成SubscriberPortUser对象,进行数据发送。 PublisherPortUser提…

Sharding-Jdbc(3):Sharding-Jdbc分表

1 分表分库 LogicTable 数据分片的逻辑表,对于水平拆分的数据库(表),同一类表的总称。 订单信息表拆分为2张表,分别是t_order_0、t_order_1,他们的逻辑表名为t_order。 ActualTable 在分片的数据库中真实存在的物理表。即上个示例中的t_…

基础组件总结(以Element UI组件库为例)

一般对一个组件的使用方式: 每一个组件都有被绑定的数据, (1)首先会对组件的数据初始化(a.data中赋初值 b. 在生命周期函数created或mounted中为变量赋予初值) (2)由于不同组件的…

【全网首发】信任的进化深度解析(全文超1500字+超20张配图)

目录 前言 正文 -1.游玩链接 0.介绍 1.单次游戏 2.多次游戏 3.一次大赛 4.多次大赛 5.不信任的演变 6.人人都会犯错 7.沙盒游戏 8.结论 结尾 前言 本篇文章将深度解析《信任的进化》这款小游戏,里面仅个人观点。制作不易,不喜勿喷。 正文 …

SmartSoftHelp8,应用程序优化,稳定性优化,性能优化,并发承载优化工具

winform 应用全局捕获异常 WPF 应用全局捕获异常 asp.net web 应用全局捕获异常 MVC web 应用全局捕获异常 netcore 应用全局捕获异常 一级缓存:html、cs,js 网页前端缓存设置 二级缓存:asp.net 客户端缓存设置 二级缓存&#xff…

shell命令编写

1. 1 #!/bin/bash 2 3 directory_path"/txh"4 5 # 使用 find 命令查找指定路径下的文件,并使用 wc 命令统计行数(即文件个数)6 7 file_count$(find "directory_path" -type f | wc -l)8 9 10 echo "在路径$director…