Python编程随时记

随机森林如何评估特征重要性? 通过以上方法,你可以得到一个关于随机森林中特征重要性的相对排序。需要注意的是,这些方法都是基于模型的,它们不一定反映特征在数据集中的实际意义。随机森林可以通过多种方式评估特征的重要性,这些评估方法可以帮助你了解哪些特征对模型的预测起到了关键作用。在这个示例中,我们使用了Scikit-Learn的随机森林分类器来训练一个模型,并计算了每个特征的重要性。你可以根据这些分数来评估特征的相对重要性。请注意,这只是一个简单的示例,实际应用中你可能需要根据具体问题进行适当的调整和处理。 阅读详情

目录:

  1. feature_importances_
  2. 常用到的包
  3. 常用的函数
  4. Python运算符及其优先级

一、feature_importances_
一般本质是决策树的学习器会有该属性,即特征的重要程度,常用于查看某个模型中用到数据特征的重要性排序。
RandomForest中的feature_importance

二、常用到的包
基础模块:数据处理及环境搭建

import pandas as pd #数据分析
import numpy as np #数组包
from scipy import stats #科学计算包的统计模块

import warnings
warnings.filterwarnings('ignore')

作图

import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline
sns.set(style='whitegrid',palette='muted')

#防止中文乱码问题
from matplotlib.font_manager import _rebuild
_rebuild()
import matplotlib as mpl
mpl.rcParams['font.sans-serif']=[u'SimHei']
mpl.rcParams['axes.unicode_minus']=False

计时(程序运行耗时)

import time
t1=time.time()
代码块
t2=time.time()
print('程序运行耗时',(t2-t1))

模型预处理

from sklearn.model_selection import KFold,StratifiedKFold
from sklearn.model_selection import cross_val_score
from sklearn.model_selection import GridSearchCV

机器学习模型-回归

from sklearn.ensemble import GradientBoostingRegressor
from sklearn.ensemble import RandomForestRegressor
from sklearn.linear_model import LinearRegression

机器学习模型-分类

from sklearn.linear_model import LogisticRegression
from sklearn.linear_model import LogisticRegressionCV
from sklearn.linear_model import Perceptron
from sklearn.linear_model import SGDClassifier
from sklearn.linear_model import PassiveAggressiveClassifier

from sklearn.neighbors import KNeighborsClassifier

from sklearn.svm import SVC, LinearSVC

from sklearn.gaussian_process import GaussianProcessClassifier

from sklearn.naive_bayes import GaussianNB
from sklearn.naive_bayes import BernoulliNB

from sklearn.tree import DecisionTreeClassifier

from sklearn.ensemble import AdaBoostClassifier
from sklearn.ensemble import BaggingClassifier
from sklearn.ensemble import ExtraTreesClassifier
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.ensemble import RandomForestClassifier
from sklearn.ensemble import VotingClassifier

导入数据

#导入数据
train=pd.read_csv('Python数据/bike_train.csv')
test=pd.read_csv('Python数据/bike_test.csv')
#合并数据集
BikeData=train.append(test,ignore_index=True)
print('训练集大小',train.shape)
print('测试集大小',test.shape)

三、Python运算符及其优先级
1)建立函数查看数据集前三行以及各列信息

#建立函数查看数据集前三行以及各列信息
def check_file(data,data_name):
    print('{:*^30}'.format('{}前3行').format(data_name))
    print(data.head(3),'\n')
    print('{:*^30}'.format('{}各列信息').format(data_name))
    print(data.info())

check_file(taobaoappDfBase,'taobaoappDfBase')
>>>
************taobaoappDfBase前3行*************
    user_id    item_id  behavior_type user_geohash  item_category  \
0  98047837  232431562              1          NaN           4245   
1  97726136  383583590              1          NaN           5894   
2  98607707   64749712              1          NaN           2883   

            time  
0  2014-12-06 02  
1  2014-12-09 20  
2  2014-12-18 11   

************taobaoappDfBase各列信息************
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 12256906 entries, 0 to 12256905
Data columns (total 6 columns):
user_id          int64
item_id          int64
behavior_type    int64
user_geohash     object
item_category    int64
time             object
dtypes: int64(4), object(2)
memory usage: 561.1+ MB
None

2)查看字段唯一值及空值情况

#查看字段唯一值及空值情况
def check_unique_null(dataframe):
    for column in dataframe.columns:
        print('{}列的非空值数量为'.format(column),dataframe[column][dataframe[column].notnull()].size,
              ',空值数量为',dataframe[column][dataframe[column].isnull()].size,
            ',唯一值数量为',len(dataframe[column].unique()))

check_unique_null(taobaoappDfBase)
>>>
user_id列的非空值数量为 12256906 ,空值数量为 0 唯一值数量为 10000
item_id列的非空值数量为 12256906 ,空值数量为 0 唯一值数量为 2876947
behavior_type列的非空值数量为 12256906 ,空值数量为 0 唯一值数量为 4
user_geohash列的非空值数量为 3922082 ,空值数量为 8334824 唯一值数量为 575459
item_category列的非空值数量为 12256906 ,空值数量为 0 唯一值数量为 8916
time列的非空值数量为 12256906 ,空值数量为 0 唯一值数量为 31
hour列的非空值数量为 12256906 ,空值数量为 0 唯一值数量为 24
weekday列的非空值数量为 12256906 ,空值数量为 0 唯一值数量为 7

四、Python运算符及其优先级
Python中,常用以下类型运算符:

  • 算术运算符
  • 比较(关系)运算符
  • 逻辑(布尔)运算符
  • 位运算符
  • 赋值运算符
  • 成员运算符
  • 身份运算符
    1)算术运算符
    在这里插入图片描述
    2)比较运算符
    在这里插入图片描述
    3)赋值运算符
    在这里插入图片描述
    4)位运算符
    在这里插入图片描述
    5)逻辑运算符
    在这里插入图片描述
    6)成员运算符
    在这里插入图片描述
    7)身份运算符
    在这里插入图片描述

8)优先级及举例
Python——运算符及其优先级

记一次maya编程mel入门之用Python改写 和之前工具栏自定义不同,这里用的,脚本编辑器 具体用法可看我的口译视频,zai在小破站 (未完成) 编程老三套 方法,变量,调用 引用包 - cmd我也不知道是哪个包,反正就要,因为python不是”亲生子“,内部Mel只是默认引入而已,用Python写首要是import 方法 - python的方法不需要写完结符号 变量 - 不需要写前缀声明,直接写变量即可,所以命名建议符合python规则,或者就是没规则,但没规则反而更能体验程序员的个人修养 (个人并不是很喜欢下划线这... 阅读详情

相关推荐

Python语法背记手册:从零散到体系化,突破编程学习瓶颈

在编程学习过程中,语法是构建代码能力的基石,其熟练程度直接影响开发效率与代码质量。理解变量、数据类型、流程控制、函数与面向对象等核心语法原理,不仅是入门Python的关键,也是进阶工程实践的基础。当开发者对语法形成体系化掌握时,便能更专注于算法设计与逻辑梳理,减少查阅资料的打断。无论是在初学巩固、面试准备还是日常开发场景中,系统整理语法要点都极具价值。本手册基于最新Python版本,中文解释配代码示例,集中梳理了易混易漏的语法细节,涵盖高频内置函数与常用标准库,帮助学习者从零散记忆走向条件反射式运用,真正跨

weixin_29231221的博客 334

RandomForest中的feature_importance

随机森林算法(RandomForest)的输出有一个变量是 feature_importances_ ,翻译过来是 特征重要性,具体含义是什么,这里试着解释一下。 参考官网和其他资料可以发现,RF可以输出两种 feature_importance,分别是Variable importance和Gini importance,两者都是feature_importance,只是计算方法不同。 Va...

weixin_34250709的博客 2981

周记作文之计算机专业实习周记15篇.docx

周记作文之计算机专业实习周记15篇.docx

Blender绑定模块:IK Target设置

本文基于Blender 2.8 正式版 IK 即 反向动力学(Inverse Kinematics) 创建骨架(Shift + A) 进入编辑模式(Tab),在挤出5条骨骼(E),末端的一条将作为IK Target 选择末端骨骼(即IK Target) 清空其父级:目的是防止出现骨骼间的循环影响(可使用快捷键Alt + P)。 取消形变选项的勾选:因为IK Target...

开发游戏的老王 8917

计算机专业实习周记15篇-总结报告模板.doc

计算机专业实习周记15篇-总结报告模板.doc

python实验日记

实验四 A=int(input("随意一个大于2的整数")) lst=list(range(2,A))# 创建一个2-A所有整数的列表 M=int(A**0.5) for index,value in enumerate (lst): if value >M: break for valuel in lst[:index:-1]: print(valuel) if valuel%value==0: lst.remove(valuel) print(lst) 列表名=list[起,止] range(起, 止

Elasticsearch 之(24)IK分词器配置文件讲解以及自定义词库

1、ik配置文件ik配置文件地址:es/plugins/ik/config目录IKAnalyzer.cfg.xml:用来配置自定义词库main.dic:ik原生内置的中文词库,总共有27万多条,只要是这些单词,都会被分在一起quantifier.dic:放了一些单位相关的词suffix.dic:放了一些后缀surname.dic:中国的姓氏stopword.dic...

weixin_30780221的博客 444

VS2022命令行编译C++报错?一招解决‘fatal error C1034: iostream: 不包括路径集‘

本文针对VS2022命令行编译C++时常见的'fatal error C1034: iostream: 不包括路径集'错误,深入剖析了其根源在于环境变量缺失。文章提供了永久配置用户环境变量(PATH、INCLUDE、LIB)的一劳永逸解决方案,确保在任何终端中都能直接使用cl命令进行编译,并给出了进阶配置与常见错误排查指南。

weixin_29011667的博客 304

Python-背记手册:一份全面的Python编程笔记

Python-背记手册:一份全面的Python编程笔记 【下载地址】Python-背记手册 这是一份全面的Python学习笔记,从基础语法到高级应用,涵盖了Python编程的各个方面。手册内容详实,包括流程控制语句、数据类型、正则表达式、函数、面向对象程序设计、模块、异常处理、文件及目录操作、数据库操作、GUI界面编程、...

gitblog_06766的博客 383

set_data_check专题[使用,report_timing,setup/hold检查]

set_data_check用于约束『数据-对-数据』的『建立保持』时间检查,通常被称为非时序约束 ( non-sequential constraints ), 理论上set_data_check 可以设在任意的两个data pin 上,其中一个pin 称为 constrained pin 类似于寄存器的data pin, 另一个pin 称为related pin 类似于寄存器的clock pin.

cy413026的博客 1万+

USB通讯速度翻倍秘诀:手把手教你用WinUsb替代HID协议(附Zadig驱动配置图解)

本文详细介绍了如何通过WinUsb技术替代传统HID协议,实现USB通讯速度的显著提升。从技术对比、实现原理到Zadig驱动配置图解,手把手教你完成免驱高速通讯方案,适用于数据采集、固件升级等场景,实测速度可达HID协议的2倍以上。

weixin_29168675的博客 133

Python必记基础知识:构筑编程之塔的基石

掌握网络编程的基础知识,如TCP/IP协议、套接字编程等,可以帮助我们开发各种网络应用程序,如Web服务器、聊天室等。Python提供了丰富的数据类型,如整数、浮点数、字符串、列表、元组、字典等。了解常见的数据结构,如列表、元组、字典、集合等,以及它们的基本操作,可以帮助我们更好地组织和管理数据,提高程序的运行效率。变量是存储数据的基本单元,数据类型决定了数据的种类和性质,运算符则用于执行数据的计算和操作。掌握异常处理的知识,可以帮助我们编写更加健壮、可靠的程序,减少程序崩溃和错误的发生。

A150922923282的博客 442

YOLOv11改进 | Conv篇 | 2024最新轻量化自适应提取模块LAE助力边缘设备部署计算(附代码 + 修改教程 + 运行教程)

本文给大家带来的一个改进机制是最新由LSM-YOLO提出的轻量化自适应特征提取(Lightweight Adaptive Extraction, LAE)模块,其是LSM-YOLO模型中的关键模块,旨在进行多尺度特征提取,同时降低计算成本。LAE通过以下方式实现更有效的特征提取:多尺度特征提取、自适应特征提取。LAE模块可以在不增加额外参数的情况下提高了模型对ROI区域的检测性能。​欢迎大家订阅我的专栏一起学习YOLO!YOLOv11改进系列专栏——本专栏持续复习各种顶会内容——科研必备目录一、本文介绍。

Snu77的博客 4055

记一次python游戏编程作业

贪吃蛇 记一次游戏作业 改良老师的贪吃蛇代码 其要求可以是以下的任意一项 增加音效 开场背景音乐 得分音效 游戏结束音效 增加游戏玩法 加速 增加障碍物 人机对战 特殊道具 总得分 增加游戏模式 事件挑战 闯关模式 皮肤选择 双人游戏 老师的意思当然是多多益善 但本人能力有限 只能选几个简单的完成了 于是我选择的是增加背景音效、得分音效以及加速 背景音效的实现 在初始化pygame之后 通过load方法加载背景音乐文件 之后通过其返回的

诗乐舞的博客 546

Linux C/C++ or 嵌入式面试之《C/C++笔面试系列》(10) C++ 前置后置增减运算符重载形式与比较

C语言的++、–运算符在此不讨论。 文章目录1、前置后置增减运算符重载的形式2、前置和后置运算符的性能比较 1、前置后置增减运算符重载的形式 自增运算符“++”和自减运算符“–”分别包含两个版本。即运算符前置形式(如 ++x)和运算符后置形式(如 x++),这两者进行的操作是不一样的。因此,当我们在对这两个运算符进行重载时,就必须区分前置和后置形式。C++根据参数的个数来区分前置和后置形式。如果按照通常的方法来重载 ++ 运算符(即作为成员函数重载时不带参数,或者作为非成员函数重载时带有一个参数),那么重载

二进制君 5831

Qemu开发ARM篇-3、qemu运行uboot演示

在上一篇文章中,我们搭建了交叉编译工具链,并成功进行了uboot的交叉编译,在该篇中,我们将演示如何利用qemu运行上一篇中交叉编译的uboot程序。

sinat_33909696的博客 1211

python背记手册 百度网盘,python背记手册pdf百度云

Python是一种语法简单、功能强大的编程语言,它既适用于传统编程语言擅长的Web开发、移动开发、游戏开发、桌面应用,又适用于当前流行的人工智能、大数据、科学计算、金融分析……如果你想要学习一门编程语言Python肯定是一个不错的选择,本期为大家整理了Python14张思维导图+字节跳动出品《Python背记手册》。【----帮助Python学习,以下所有学习资料文末免费领!----】

yang0728y的博客 1783

YOLOv8改进策略【卷积层】| GnConv:一种通过门控卷积和递归设计来实现高效、可扩展、平移等变的高阶空间交互操作

HorNet: 利用递归门控卷积实现高效高阶空间交互GnConv(Recursive Gated Convolution,递归门控卷积)

Limiiiing的博客 324

零基础学PYTHON背记手册:Python学习者的必备工具

零基础学PYTHON背记手册:Python学习者的必备工具 去发现同类优质开源项目:https://gitcode.com/ 项目核心功能/场景 帮助Python编程学习者快速掌握核心知识点,提升编程能力。 项目介绍 在众多编程语言中,Python以其简洁易学的特点受到了无数开发者的喜爱。然而,对于初学者来说,掌握Python的众多概念和语法规则并非易事。《零基础学PYTHON背记手册》正是为了解...

gitblog_06718的博客 531

《UDS协议从入门到精通》系列——图解0x23:通过地址读取内存

如何读取ECU中指定内存地址的数据?图解UDS 0x23服务带你快速上手!!

车载系统攻城狮 2623

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

python新手笔记之python高级函数编程

python是一种非常强强大的脚本语言,不仅在于编程简洁,而且借鉴了很多其他语言的精妙之处,开始学python的时候听说python是对于编程初学者而言最好的语言,我现在觉得这句话一点也不意外,python确实做到了精简与强大并存,话不多说,整理一下python的超级强大的高级函数   1,reduce——递归编程的利器  问题入门:我们现在需要计算一下N的阶乘,能够想到的方法自然是递归...

luchi007的专栏 451

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

入门必备Python背记手册!快速掌握编程!

、

2301_78095909的博客 371

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

python编程踩坑记

1.用dict不包含的键读取value值,会报错 test_result_dict = dict() #test_result_dict没有'CVE_2016_5345'这个键 case_result = test_result_dict['CVE_2016_5345'] #不是返回空值,而是报错'CVE_2016_5345'

m0_37910557的博客 126

【亲测免费】 掌握Python的捷径:Python背记手册推荐

掌握Python的捷径:Python背记手册推荐 【下载地址】Python背记手册下载仓库分享 本仓库提供了一个名为“Python背记手册.pdf”的资源文件下载。该手册旨在帮助Python学习者快速回顾和记忆Python编程语言的核心概念和常用语法 ...

gitblog_06670的博客 1042
上一篇: Python-Seaborn绘制图形
下一篇: Python-matplotlib画图时中文显示为小方框的解决方法
ckSpark
博客等级 码龄14年 273粉丝 46原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值