基于Matlab深度学习的驾驶员疲劳检测系统

article/2025/9/23 20:25:58

         随着城市化进程不断加快,中国汽车的需求 量和保有量也急剧上升。 截至 2020 年 9 月,中国 汽车保有量达到了 2.75 亿辆,随着车辆保有量的 增加,交通事故的发生率也在逐年上升。2017 年交通事故共计 20.3 万起,因车祸死亡人数 6.3 万 人,2018 年交通事故较 2017 年上升 20.6%,2019 年交通事故较 2018 年下降 18.3% ,虽然事故率 有所下降但仍不容乐观。研究表明疲劳驾驶是致 使车祸发生的重要原因之一,如果能够在交通事 故前检测出驾驶员的疲劳行为并及时提醒可以有 效减少因疲劳驾驶而导致的车祸的发生,因此研 究疲劳检测算法对改善交通道路安全有着重要 意义。目前疲劳检测主要分为三大类:基于车辆信息 的检测方法,基于驾驶员信息的检测方法和基于多 信息融合的检测方法 。 基于车辆信息的检测方 法包括车辆加速度信息、车辆转向角信息等来判断 驾驶员的疲劳情况,该方法对于外界环境变化敏 感,针对于不同的路况、驾驶员驾驶习惯、天气等变 化因素难以定量分析,所以并不是疲劳驾驶的主要 研究方向。 基于驾驶员信息的检测方法分为两种 信息类型,一种是驾驶员的生理参数,主要检测参 数包括脑电信号、心率等;另一种是驾驶员的行为 特征,包括眼动特征、嘴部状态,头部姿态等,不论 是驾驶员的生理参数还是行为特征在当前科技迅 速发展的情况下都是容易收集并处理的。

一、算法框架

       目前检测疲劳驾驶状态的方法主要可以分为如下三类: 第一类,基于生理状态的检测;第二类,基于驾驶行为;第 三类,基于图像。第一类,主要是通过可穿戴设备完成信 息的采集,检测精度高、效果好,但是相关传感器设备费 用较高,且跟人体有直接接触,用户体验可能不好;第二 类,通过传感器采集车道偏移、方向盘反转角度、刹车踩。踏次数和力度等相关行为信息,从而 完成对疲劳驾驶状态的判定,但是不 同司机个人驾驶习惯、特点等有差异 性,会对准确率造成不同的影响;第 三类,车载摄像头实时采集司机面部 图像,对眼部、嘴部图像或者是对整 个人脸提取特征进行处理,从而完成 司机驾驶状态的判断。由于基于图像 的疲劳驾驶检测,没有与人体直接接 触,并且能够提取到疲劳驾驶的关键 特征,利用机器学习的方法也能很大 程度提高检测精度。本文将介绍基于 图像的疲劳驾驶检测方法,完成实际 情况下疲劳驾驶检测的相关方法研究。

         Yolo 由 Redmon 等于 2016 年首次提出。 在 Yolo 提出之前,传统的检测算法的流程通常是先通 过计算机图形学(或者深度学习)的方法,对图片进 行查找,找出若干个可能存在物体的区域,将这些 区域截取在进行分类。 而 Yolo 不需要提前找到可 能存在目标的图像位置,可以实现端到端的目标 检测 。本方案对眼部图像进行分析,分类情景相对单一。模型选用ResNet-101 网络,其在一定条件下,比VGG和GoogLeNet的准确度要高,计算效率更优, 在进行特征提取的时候优势很大。 ResNet网络中使用了2种残差单元,不同的网络,有不同的策略。最 优的残差结构,没有增加额外参数,计算的复杂度也没有加大,类似于 同等映射的效果。整个网络仍然可以端到端反向传播进行训练。该网络 解决了退化问题,相关数据显示,深度加深,性能相应得到了提升。 在实验中,我们从10位实验人员录制的疲劳和非疲劳视频中,手动 选取相关帧,送入人眼检测。将人眼检测所得到的人眼区域图像作为数 据集,送入ResNet网络进行特征提取,从而得到全连接层输出的特征向量。

        随着交通运输行业和自动驾驶行业的发展,公路上每天行驶的车辆都会产生许多 未知的风险,因此车辆安全领域的科研人员对 ABS、ESP、电子手刹、驾驶员疲劳检测 系统等车辆主动安全设备进行了广泛的研究。驾驶员疲劳检测技术是车辆主动安全设 备的关键部分,旨在通过监控司机状态并进行预警,达到保障司机及行人财产和生命 安全的目的。 首先,对目前驾驶员疲劳检测的关键技术——特征提取算法和状态分类算法的原 理和优缺点进行研究,并最终选取深度学习作为驾驶员疲劳检测系统的特征提取和状 态分类方法。然后基于深度学习方法设计疲劳检测系统的特征提取算法与状态分类算 法,其中特征提取算法用于驾驶员的脸部区域图像提取,状态分类算法将对瞌睡、哈 欠、抽烟、打电话、正常驾驶五种状态进行分类。对深度学习算法的脆弱性进行分析, 并设计了一个生成对抗网络算法作为攻击模块,通过其生成的疲劳对抗样本和采集的 驾驶员真实样本同时训练状态分类网络,使分类网络具备区分对抗样本与真实样本的 能力,提高对疲劳对抗样本的防御能力。 其次,提出了一种将卷积神经网络和生成对抗网络进行级联的驾驶员疲劳检测框 架,主要包括信息采集模块、特征提取模块、攻击模块、状态分类模块和判定及预警 模块。信息采集模块:通过红外摄像头采集驾驶员的实时状态视频,然后从视频中获 取表征驾驶员状态的帧图像;状态分类模块:将驾驶员图像作为输入,获取驾驶员的 人脸范围和关键点坐标,然后根据获取的人脸及关键点位置对驾驶员脸部进行区域划 分和区域提取,获得驾驶员耳朵、嘴巴、眼睛的区域图像;攻击模块:使用生成对抗 网络技术,通过噪声生成驾驶员的疲劳对抗样本,即伪瞌睡、伪哈欠图像,并将其标 记为非疲劳状态;状态分类模块:使用真实样本与疲劳对抗样本共同训练,使状态分 类模块在区分驾驶员状态的同时具备抵抗伪疲劳图像攻击的能力,其能够对五种驾驶 员状态进行分类,包括正常驾驶、瞌睡、哈欠、打电话、抽烟;判定及预警模块:将 经过状态分类后的图像作为输入,根据 PERCLOS 算法和一段时间内驾驶员特征判定驾 驶员是否处于疲劳状态,并对疲劳状态进行记录和预警。 最后,对疲劳检测系统的硬件解方案进行研究,提出了使用树莓派 3B+、英特尔神 经计算棒作为硬件解决方案,满足了算法运行的需求同时具有较高的性价比。然后对提出的级联卷积神经网络和生成对抗网络的驾驶员疲劳检测系统的可行性进行验证, 其中包括对区域提取算法准确率的验证、疲劳检测系统准确率的验证,并使用恶意图 像进行攻击从而验证系统的鲁棒性。实验表明,本文在防御疲劳对抗样本攻击方面, 经过对抗样本训练的状态分类网络对伪疲劳图像的检出率从 15%提高到 84%,说明本 检测系统具备一定的防御伪疲劳图像攻击的能力。提出的区域提取算法对驾驶员五官 的提取准确率达到 94%以上,疲劳检测系统在对驾驶员疲劳状态的检测中,准确率达 到了 92%。综上所述,本文提出的硬件方案检测效果较好,能够满足疲劳检测系统的 运行需求。

二、代码实现

        由于目前特征提取算法和状态分类算法不能满足疲劳检测系统的需求,本章将基 于深度学习算法设计驾驶员的特征提取算法和状态分类算法,为了增强疲劳检测系统 的扩展能力,特征提取算法将驾驶员图像作为输入,最终输出驾驶员的耳部、嘴部、 眼部的图像;状态分类网络将对提取的驾驶员图像进行分类,该分类网络能够识别以 下五种驾驶员图像:正常驾驶、瞌睡、哈欠、抽烟、打电话。

2.1 特征提取算法

        本文提出的特征提取算法由驾驶员脸部关键点提取算法和区域图像提取算法组成。 驾驶员脸部关键点提取算法将驾驶员图像作为输入,经过神经网络的卷积计算和反向 传播算法,最终输出一个十元组,即驾驶员的眼睛、鼻子以及两个嘴角——五个关键 点。将驾驶员脸部关键点坐标输入到区域提取算法中,最终将获得驾驶员的眼部、耳 部、嘴部图像。

2.2 状态分类算法

        纵观图像分类网络的发展过程,从 VGG、Inception-NET到 RES-NET,为 了提高特征提取的维度,分类网络的识别准确率,神经网络的层数越来越高,模型也 变得越来越厚重。即使经过区域提取算法得到的驾驶员区域图像尺寸较小,在图像分 类网络训练过程中能够较快的进行特征提取和学习,如果在状态分类网络中设计的层 数较高,要想应用到嵌入式设备中仍然无法满足实时性的要求。 我们调研发现网络结构对运算时间的影响巨大,本文在设计状态分类网络时对网 络结构进行了优化,尽可能使用低计算量的网络结构,以获得实时性更好的疲劳检测 系统。在对神经网络优化的研究中,A.G. Howard 等人做了大量的工作,他 们提出的深度级可分离卷积(depthwise separable convolution),将标准卷积分解为深 度卷积+逐点卷积,这种分解能够有效的大量减少计算量以及模型的大小,在实验中显 示在输入输出效率和性能不变的情况下,计算量降低 9 倍。因此,本文设计的驾驶员状态分类网络采用深度级可分离卷机代替普通卷积的方式,加速网络的运算过程。

2.3 攻击算法

        本文设计的攻击算法将采用噪声作为输入,通过驾驶员状态分类网络结合生成对 抗网络的方法生成对抗样本,对驾驶员状态分类模块进行攻击。经过调研,深度卷积 生成对抗网络[45](DCGAN)在 GAN 提出后,在生成图像上表现出非常优异的结果, 本文将采用 DCGAN 生成驾驶员的疲劳对抗样本包含瞌睡和哈欠的对抗样本。因为本 文希望模拟对检测系统的黑盒攻击,即从噪声生成对抗样本,因此将对 DCGAN 进行 改进。本文将使用中的方法,此方法使用生成样本代替原始图像进行训练,第 二部分与 D. Song 等人在中提出的 advGAN(生成对抗样本的生成对抗网络)算 法相似。 本文设计的攻击模块算法如图 3-8 所示。正常训练部分的目的是使 DCGAN 学习 到符合正常数据集的数据分布,网络包含生成器与判别器。生成器从任意噪声𝑧中生成 生成样本𝐺(𝑧),判别器将生成样本与真实样本之间的距离反馈给生成器,使生成器能 够生成更加真实的照片,同时使判别器的判别能力得到提高。共同构成 DCGAN 的损失 函数𝐿𝑔𝑎𝑛,见式(3.14)。其中,𝐿𝑔、𝐿𝑑分别为生成器和判别器的损失函数,D(x)为真实 样本的概率,D(G(z))为生成样本的概率。

function varargout = main(varargin)
% MAIN MATLAB code for main.fig
%      MAIN, by itself, creates a new MAIN or raises the existing
%      singleton*.
%
%      H = MAIN returns the handle to a new MAIN or the handle to
%      the existing singleton*.
%
%      MAIN('CALLBACK',hObject,eventData,handles,...) calls the local
%      function named CALLBACK in MAIN.M with the given input arguments.
%
%      MAIN('Property','Value',...) creates a new MAIN or raises the
%      existing singleton*.  Starting from the left, property value pairs are
%      applied to the GUI before main_OpeningFcn gets called.  An
%      unrecognized property name or invalid value makes property application
%      stop.  All inputs are passed to main_OpeningFcn via varargin.
%
%      *See GUI Options on GUIDE's Tools menu.  Choose "GUI allows only one
%      instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the response to help main% Last Modified by GUIDE v2.5 18-Apr-2022 10:33:59% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...'gui_Singleton',  gui_Singleton, ...'gui_OpeningFcn', @main_OpeningFcn, ...'gui_OutputFcn',  @main_OutputFcn, ...'gui_LayoutFcn',  [] , ...'gui_Callback',   []);
if nargin && ischar(varargin{1})gui_State.gui_Callback = str2func(varargin{1});
endif nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
elsegui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT% --- Executes just before main is made visible.
function main_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject    handle to figure
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
% varargin   command line arguments to main (see VARARGIN)% Choose default command line output for main
handles.output = hObject;set(handles.radiobutton1,'value',0);
set(handles.radiobutton2,'value',0);axes(handles.axes1); %指定需要清空的坐标轴
cla reset;
box on;
set(handles.axes1,'xtick',[]);
set(handles.axes1,'ytick',[]);
axes(handles.axes2); %指定需要清空的坐标轴
cla reset;
box on; %在坐标轴四周加上边框
set(handles.axes2,'xtick',[]);
set(handles.axes2,'ytick',[]);
axes(handles.axes3); %指定需要清空的坐标轴
cla reset;
box on; %在坐标轴四周加上边框
set(handles.axes3,'xtick',[]);
set(handles.axes3,'ytick',[]);
set(handles.edit1,'string','');
set(handles.edit2,'string','');
set(handles.edit3,'string','');
set(handles.edit4,'string','');% Update handles structure
guidata(hObject, handles);% UIWAIT makes main wait for user response (see UIRESUME)
% uiwait(handles.figure1);% --- Outputs from this function are returned to the command line.
function varargout = main_OutputFcn(hObject, eventdata, handles) 
% varargout  cell array for returning output args (see VARARGOUT);
% hObject    handle to figure
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)% Get default command line output from handles structure
varargout{1} = handles.output;% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
clc;
clear;
output=VOCxml_to_matlab_main();
save dataSet output;% --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton2 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
global inputSize;
data=load('dataSet');
data=data.output;% 数据存储在一个包含三列的表中,其中第一列包含图像文件路径,第二列包含车辆边界框,
% 第三列对应的类别。
% 将数据集分成训练集、验证集和测试集。选择 60% 的数据用于训练,10% 用于验证,
% 其余用于测试经过训练的检测器shuffledIndices = randperm(height(data));
idx = floor(0.6 * height(data));trainingIdx = 1:idx;
trainingDataTbl = data(shuffledIndices(trainingIdx),:);validationIdx = idx+1 : idx + 1 + floor(0.1 * length(shuffledIndices) );
validationDataTbl = data(shuffledIndices(validationIdx),:);testIdx = validationIdx(end)+1 : length(shuffledIndices);
testDataTbl = data(shuffledIndices(testIdx),:);% 使用 imageDatastore 和 boxLabelDatastore 创建数据存储,
% 以便在训练和评估期间加载图像和标签数据
imdsTrain = imageDatastore(trainingDataTbl{:,'imageFilename'});
bldsTrain = boxLabelDatastore(trainingDataTbl(:,2:end));imdsValidation = imageDatastore(validationDataTbl{:,'imageFilename'});
bldsValidation = boxLabelDatastore(validationDataTbl(:,2:end));imdsTest = imageDatastore(testDataTbl{:,'imageFilename'});
bldsTest = boxLabelDatastore(testDataTbl(:,2:end));%组合图像和边界框标签数据存储
trainingData = combine(imdsTrain,bldsTrain);
validationData = combine(imdsValidation,bldsValidation);
testData = combine(imdsTest,bldsTest);%显示其中一个训练图像和边界框标签
data = read(trainingData);
I = data{1};
bbox = data{2};
annotatedImage = insertShape(I,'Rectangle',bbox);
annotatedImage = imresize(annotatedImage,2);
figure
imshow(annotatedImage)%是否需要训练
doTraining=true;end

 

参考文献

【1】刘梦佳,赵建国.基于 SVM 的疲劳驾驶人脸图像特征检测算法 [J].半导体光电,2020.

【2】 吴雪,宋晓茹,高嵩,陈超波.基于深度学习的目标检测算法综 述[J].传感器与微系统,2021. 


         "。基于面部特征的疲劳驾驶检测算法通常效果较好,但其特征提取大都基于人脸检测实现,设计了一种基于深度学习 的多特征融合疲劳驾驶检测系统,该系统基于深度卷积神经网络,采用开源的深度学习框架搭建网络,自制数据集,完成人眼与 嘴巴标注并用于网络训练。 通过对比试验,训练后的网络能够适应复杂外部干扰,解决了传统算法对头部姿态和面部遮挡鲁棒性 差的问题,能有效识别疲劳状态,在测试集中总体准确率能到 96%。

 

驾驶员安全警告系统(DAC)此外还有一部分疲劳监测系统被称为“驾驶员安全警告系统”这套系统在车辆进入容易使司机进入放松状态的笔直、平坦的道路,容易使司机分神和打盹的环境,以及当车速超过65公里/小时,均会被激活。驾驶员安全警告系统由一个摄像头、若干传感器和一个控制单元组成。摄像头装在风挡和车内后视镜之间,不断测量汽车与车道标志之间的距离,通过数字摄像机发出的信号以及来自方向盘运动的数据监测车辆行驶的路线。DAC可把异常行驶状况和您的正常驾驶风格进行对比,传感器记录汽车的运动控制单元储存该信息并计算是否有失去对汽车控制的危险。如果检测到您的驾驶行为有疲态或分心的迹象出现评估的结果是高风险时,即通过声音信号向司机发出警示。此外,在仪表盘上还显示一段文字信息,用一个咖啡杯的符号提示司机休息一会儿。


http://chatgpt.dhexx.cn/article/RYIPjOYi.shtml

相关文章

基于MATLAB的疲劳检测系统

基于MATLAB的疲劳检测系统 一、课题介绍 随着汽车工业的不断发展,随之而来的社会问题也愈加严重。交通事故给人们造成巨大伤害的同时,也给社会带来沉重的负担和影响。由于疲劳驾驶是引起交通事故的一个主要原因。因此,研究一种合理有效、实时准确检测驾驶员疲劳驾驶的非接触式车…

基于图像分割的疲劳检测方法研究

问题: 随着社会的不断进步,汽车已经成为了当今世界拥有主宰地位的交通工具。然而汽车数量的上升同时也导致交通事故数量猛增,由司机疲劳驾驶引起的交通事故的发生频率更是不断攀升。疲劳的复杂性引起了各个学科的研究者广泛关注,传统的疲劳评估方法不仅需…

疲劳检测实验报告

疲劳检测实验报告 邢益玮 201930101151 2021/1/13 (重度拖延症了,内容又有点多,学长和老师不好意思了🙏🙏🙏) 文章目录 疲劳检测实验报告前言一、最初的尝试——dlib库1.1 信息收集1.2 为Anac…

基于MATLAB的疲劳检测

在疲劳检测算法中,个人感觉最好的算法是 Dlib 这个库可以实现人脸的关键点的检测,有了人眼睛的点位,便可以检测眨眼之类的频率来进行人眼识别; 但是在matlab中调用dlip需要比较复杂的操做,有兴趣的可以网上搜索做法&am…

MATLAB疲劳检测系统

目录 摘要 I Abstract II 1 绪论 1 1.1 研究背景及意义 1 1.2 国内外疲劳驾驶研究现状 2 1.3本文的主要研究内容及组织结构 3 2 人脸检测与定位技术 4 2.1人脸检测与定位技术概述 4 2.1.1基于图像的人脸检测方法 4 2.1.2基于特征的人脸检测方法 5 2.2 Adaboost算法介绍 6 2.2.1…

python疲劳检测

疲劳驾驶检测 结合眼睛的闭合状态和嘴巴闭合状态,综合判断驾驶人员的疲劳状况。python编写,tensorflow,opencv和dlib实现人脸的检测和特征点提取。 效果图: 效果视频: python opencv 疲劳驾驶检测 项目代码下载: pyt…

疲劳检测(一)Landmark + HeadPose

数据集 1)Drazy 数据集:红外,包含多种用于疲劳检测的数据,(有电极) 14*3*10min get http://www.drozy.ulg.ac.be/ 2)NTHU 驾驶员疲劳检测数据集 http://cv.cs.nthu.edu.tw/php/callforpaper/datasets/DDD/ 3&am…

26.疲劳检测

目录 1 项目介绍 2 代码实现 2.1 导入库 2.2 定义68个关键点 2.3 定义eye_aspect_ratio() 2.4 定义参数 2.5 定义阈值 2.6 定义次数 2.7 创建检测器 2.8 获取左眼与右眼的起始点与终止点 2.9 读取视频 2.10 定义shape_to_np() 2.11 遍历每一帧 2.11…

Dlib模型之驾驶员疲劳检测一(眨眼)

目录 序目的技术背景 正文(1)环境搭建(2)下载开源数据集(3)视觉疲劳检测原理(4)主要代码思路(5)运行效果 序 目的 经查阅相关文献,疲劳在人体面…

Python人脸检测实战之疲劳检测

本文主要介绍了实现疲劳检测:如果眼睛已经闭上了一段时间,我们会认为他们开始打瞌睡并发出警报来唤醒他们并引起他们的注意,感兴趣的朋友可以了解一下。 今天我们实现疲劳检测。 如果眼睛已经闭上了一段时间,我们会认为他们开始打…

计算机视觉项目实战-驾驶员疲劳检测

😊😊😊欢迎来到本博客😊😊😊 本次博客内容将继续讲解关于OpenCV的相关知识 🎉作者简介:⭐️⭐️⭐️目前计算机研究生在读。主要研究方向是人工智能和群智能算法方向。目前熟悉深度学…

【毕业设计】深度学习疲劳检测 驾驶行为检测 - python opencv cnn

文章目录 0 前言1 课题背景2 相关技术2.1 Dlib人脸识别库2.2 疲劳检测算法2.3 YOLOV5算法 3 效果展示3.1 眨眼3.2 打哈欠3.3 使用手机检测3.4 抽烟检测3.5 喝水检测 4 最后 0 前言 🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目…

Pandas和Numpy:常见函数参数inplace的作用

1.inplace参数的作用 pandas中,包括numpy中很多方法都设置了inplace参数。该参数的主要作用是指示是否在本地数据上做更改,其只能接受bool型参数,即 True和False. 具体示例如下: data为原始数据。接下来用dataframe.drop()删除Ti…

编译inplace_abn

出现以上问题 1、检查pytorch版本,一般1.5以上 2、检查cuda版本,一般10.1以上 3、检查环境变量设置 linux:export -p 重点检查 PATH 、LD_LIBRARY_PATH 不能重复设置变量,将重复的删掉 unset LANG 是将LANG删掉 declare -x LANG是…

build_ext --inplace 是什么意思

如果是做目标检测类的任务,经常需要用到cocoapi python setup.py build_ext --inplacebuild_ext是指明python生成C/C的扩展模块(build C/C extensions (compile/link to build directory))--inplace指示 将编译后的扩展模块直接放在与test.py同级的目录中。 流程如…

Bug集和之3:set_index 设定索引——inplace参数

知识点:set_index() 问题发现: 需要设定索引,以获取特定行的数据 ,但最后结果运行的不理想 初始数据 index000056.OF…01998-3-27NaN……………70302023-1-132.573… 过程代码 result.set_index(index) df result.loc[20…

python distutils打包C/C++模块,执行python setup.py build_ext --inplace时报错cl

一、问题发生环境 python可以把C/C代码编译并打包为pyd模块,从而可以使python脚本直接调用C/C模块功能。 我在执行python setup.py build_ext --inplace时遇到了缺失cl.exe的错误提示,然后用pip安装了cl。 再次编译,提示cl: error: no such o…

inplace-operation-error 【已解决】

最近在搞CT医学图像分割模型的领域泛化优化,结果就出现了报错: 关于这个问题stackoverflow上有非常多的讨论,可以过去围观: 指路:中文版stackoverflow - 堆栈内存溢出 (stackoom.com) Stack Overflow - Where Develo…

pandas数据排序sort_values后面inplace=True与inplace=False的实例驱动理解

目 录 1 引子 2 inplace参数理论理解 3 inplace参数实例驱动理解 3.1 inplace True 3.2 inplace False 1 引子 Series 的排序:Series.sort_values(ascendingTrue, inplaceFalse) 参数说明: ascending:默认为True升序排序,为F…

Python中inplace参数

【小白从小学Python、C、Java】 【Python-计算机等级考试二级】 【Python-数据分析】 Python中inplace参数 [太阳]选择题 对于以下python代码表述错误的一项是? import pandas as pd df pd.DataFrame({c1:[11undefined22]}) print(【执行】print(df):\nundefineddf) print(【…