Python快速刷题网站——牛客网 数据分析篇(十一)

news/2024/5/20 13:00:50/文章来源:https://blog.csdn.net/qq_43604989/article/details/126448250

👦👦一个帅气的boy,你可以叫我Love And Program
🖱 ⌨个人主页:Love And Program的个人主页
💖💖如果对你有帮助的话希望三连💨💨支持一下博主

在这里插入图片描述

python是目前非常火爆的语言,其在人工智能、数据分析领域都占有一席之地,无论是学习还是工作,都会给你带来相当大的帮助。我在这给大家推荐一个快速提升自己的网站👉👉牛客网,他们现在的IT题库内容很丰富,属于国内做的很好的了,可以在下图中看见里面试题应有尽有,最最最重要的里面的资源全部免费!!!(亲测全免费,写题解还可以得小礼物)

欢迎大家订阅本专栏进行自助练习🥰🥰

系列专栏链接:

Python快速刷题网站——牛客网 数据分析篇专栏

前言

       逻辑运算 部分已经完结,相信大家对于csv、excel文件基本的查找操作已经熟练掌握了,接下来我们要学习的是 中级函数 部分,得,又需要记新的函数了,但是你要知道,Python作为你最值得信赖的工具,它是不会为难你的,总结起来就是好记,很好记,非常t喵d好记。

不同语言使用人数

       现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔):
刚刚发现牛客网想要学习编程的小白,不知道优先学习什么语言,刷什么题单,你能帮助他从这个csv文件中找到牛客网各种语言使用的用户分别有多少吗?
请添加图片描述
输出该数据集中满足筛选条件的全部信息,包括列号。请添加图片描述

  • 读题找出重点:找出语言种类
  • 接下来我们学习三个将要用到的函数,分别是:value_counts()size()count()

value_counts():The returned Series will have a MultiIndex with one level per input column. By default, rows that contain any NA values are omitted from the result. By default, the resulting Series will be in descending
order so that the first element is the most frequently-occurring row.

翻译过来是:返回的序列将具有一个多索引,每个输入列有一个级别。默认情况下,包含任何 NA 值的行将从结果中省略。默认情况下,生成的序列将降序排列顺序,因此第一个元素是最常出现的行。

       总结一下:计算每列重复值个数,但是这个列取决于你用的数据,选取多列按一列计算,代码如下:

import numpy as np
import pandas as pddata= pd.DataFrame({"Nowcoder_ID":[178372,989717,783650,723570,456568],"Level":[7,1,2,6,7],"Achievement_value":[8711,13,130,5666,11234],"Num_of_exercise":[500,3,32,433,899],"Graduate_year":[2017,2016,2010,2019,2017],"Language":['CPP','Java','C','C','Python'],
})
data.value_counts()

       很明显,除非是两行数据一模一样,否则最右边统计个数只有一个,但是他也很人性化,若是遇见存在相同的数据会显示为空并放在一起,读者可以自行尝试
在这里插入图片描述
       既然如此根据题目要求,我们选取特定一列即可完成任务:

data['Language'].value_counts()

在这里插入图片描述


count() : For each column/row the number of non-NA/null entries.

翻译:对于每列/行,非 NA/空条目的数量。
       总结一下:直接用的话计算的是数量,单纯的数量!但是我们有一个分组函数groupby(),他们可以结合使用,于是答案就出来了。

       在此之前,我先给大家稍微说一下什么是groupby()函数,一个小demo可以轻松理解:

import numpy as np
import pandas as pd
data= pd.DataFrame({"Num_of_exercise":[500,3,32,433,899],"Graduate_year":[2017,2016,2010,2019,2017],"Language":['CPP','Java','C','C','Python'],
})
data['Language'].value_counts()
data1 = data.groupby('Language')
for name,group in data1:print (name)print (group)

       以不通语言为一组,这就是分组后的内容,注意:groupby函数不能够直接显示具体内容,其代指<pandas.core.groupby.generic.DataFrameGroupBy object at 0x0000028EA26A2B20>,所以需要循环输出。

在这里插入图片描述
       上面说了要用count()groupby()函数两者结合,两者结合后会发生奇妙的化学反应,反应如下,可以直接生成数据:

data.groupby('Language').count()
# 于是我们只需要随便选一行就好了
# 注意,因为与输出结果略显不同,所以count()无法输出牛客网的这道题
data.groupby('Language').count()['Nowcoder_ID']

在这里插入图片描述


size() :Return the number of rows if Series. Otherwise return the number of rows times number of columns if DataFrame.

翻译:如果为Series,则返回行数。如果是 DataFrame 则返回列中的的行数。
       总结一下:可以理解为在列中寻找相同的行,统计的是每条数据的条数,上面讲的count()函数统计的是值的个数,所以需要最后单独选一列,而size则不需要,代码如下:

# 注意,因为与输出结果略显不同,所以size()无法输出牛客网的这道题
data.groupby('Language').size()

在这里插入图片描述


最终代码整理如下:
DA12 牛客网不同语言使用人数

import pandas as pd
Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')
print(Nowcoder.loc[:,'Language'].value_counts())

我们热爱这个世界时,才真正活在这个世界上。                           ————泰戈尔

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

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

相关文章

猿创征文|Python快速刷题网站——牛客网 数据分析篇(十二)

&#x1f466;&#x1f466;一个帅气的boy&#xff0c;你可以叫我Love And Program &#x1f5b1; ⌨个人主页&#xff1a;Love And Program的个人主页 &#x1f496;&#x1f496;如果对你有帮助的话希望三连&#x1f4a8;&#x1f4a8;支持一下博主 python是目前非常火爆的…

怎么让网站在浏览器网址前面显示小图标?

大家在浏览很多网站的时候都会发现在浏览器的地址栏前面会有一个小图标&#xff0c;在浏览器的标签位置也有一个小图标&#xff0c;例如 Baidu 、腾讯等网站都有这样的图标。你的网站上想不想也增加一个这样的小图标呢&#xff1f;有了这个小图标你的网站就会比别人的网站更加醒…

网站首页滚动图片的后台管理

在网上找了好久的资源都没有找到&#xff0c;怎么实现在后台可以更换网站图片的&#xff0c;因为是在做项目&#xff0c;最后项目要交给&#xff0c;不 太懂计算机的管理员来管理&#xff0c; 这样就涉及到了&#xff0c;怎么让网站的管理员可以定期更换滚动的图片&#xff0c…

Java实现视频网站的视频上传、视频转码、视频关键帧抽图, 及视频播放功能

视频网站中提供的在线视频播放功能,播放的都是FLV格式的文件,它是Flash动画文件,可通过Flash制作的播放器来播放该文件.项目中用制作的player.swf播放器. 多媒体视频处理工具FFmpeg有非常强大的功能包括视频采集功能、视频格式转换、视频抓图、给视频加水印等。 ffmpeg视频…

LAMP架构(LAMP网站应用模式)搭建,包含Apache,Mysql,PHP的安装

文章目录LAMP架构概述各组件的主要作用如下:注意事项Apache安装关闭防火墙&#xff0c;传输apache所需软件包安装环境依赖包配置软件模块编译安装优化配置文件路径添加httpd系统服务修改httpd 服务配置文件查看状态浏览器访问验证Mysql安装将安装mysql 所需软件包传到/opt目录下…

Nginx网站服务(Nginx虚拟主机的搭建)

Nginx网站服务以及LNMP搭建 文章目录Nginx网站服务以及LNMP搭建Nginx服务基础关于NginxNginx相对于Apache的优点:Apache相对于Nginx的优点:Nginx访问控制安装关闭防火墙安装依赖包创建运行用户、组编译安装Nginx启动前先关掉之前装的apache服务检查、启动、重启、停止 nginx服务…

最新微信公众号文章采集发布到destoon网站,免费教程!

DESTOON B2B网站管理系统是一套基于PHPMySQL的开源B2B电子商务行业门户网站解决方案&#xff0c;当前已发布会员、分站、商城、供应、求购、行情、公司、展会、文章、信息、品牌、团购、图库、专题、视频、下载、人才、知道等模型 下面教大家如何用孤狼公众号助手发布文章 1.…

腾讯云Linux云服务器搭建网站

腾讯云Linux云服务器搭建网站 基本准备及操作 这里的安装过程使用系统自带的yum工具进行安装 安装jdk和java运行环境安装mysql安装tomcat安装httpd服务部署web项目到服务器实现从服务器tomcat上下载文件 1.安装jdk 使用如下指令可以安装1.8版本的jdk yum -y install java-1.…

Nodejs使用实例——网站登录验证

JS是脚本语言&#xff0c;脚本语言都需要一个解析器才能运行。对于写在HTML页面里的JS&#xff0c;浏览器充当了解析器的角色。而对于需要独立运行的JS&#xff0c;NodeJS就是一个解析器。每一种解析器都是一个运行环境&#xff0c;不但允许JS定义各种数据结构&#xff0c;进行…

tm是什么域名_关于网站收录排名那些事-你的网站为什么不被收录?

网站做好后&#xff0c;一定会有一个疑问&#xff0c;网站如何才让百度收录&#xff0c;别人可以在百度搜索到你的网站呢&#xff1f;本文就来跟大家聊五毛钱的关于网站收录那些事。温馨提示:本文介绍的这些内容只是加快网站被搜索引擎收录&#xff0c;你不做&#xff0c;早晚也…

java搭建云手机,使用华为云服务器搭建一个简单网站(内容全面)

一、购买服务器因为遇上华为云服务器打折活动&#xff0c;因此就买了一年的华为云服务器。购买过程如下&#xff1a;首先是去华为云官网注册账号&#xff0c;如果是学生进行学生认证&#xff0c;然后搜索“学生套餐”&#xff0c;点击“参与”就会出现一下界面&#xff1a;按自…

Asp.net网站开发(一)LINQ TO SQL 之动态数据支持

LinQ to SQL动态数据支持 动态数据支持&#xff0c;它允许开发人员不用编写一行代码就可以快速的创建使用linq to sql对象模型的数据驱动网站。 创建方法&#xff1a; 1. 创建asp.net Dynamic data站点 新建项目——web——asp.net Dynamic data LINQ TO SQl 应用程序——…

Asp.net网站开发(一)LINQ TO SQL 之八大字句

1. from in子句&#xff1a;指定查询操作的数据源和变量范围//创建LinqDB数据库上下文实例DataClasses1DataContext db new DataClasses1DataContext();//使用lINQ查询表达式查询数据var query from stu in db.studentjoin m in db.mark on stu.sid equals m.sidsele…

Asp.net网站开发(二)HttpHandler

模版和处理程序 封面数字水印&#xff1a;运用httphandler技术 封面数字水印的实现&#xff1a; 1.创建一个Ihttphandler的类Handler12.在Handler1中写代码 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.IO; using Sys…

Asp.net网站开发(二)用户控件

用户控件 定义&#xff1a; 在 ASP.NET 中&#xff1a;使用与 ASP.NET 页相同的语法&#xff0c;以声明方式创作的服务器控件。该控件用 .ascx 扩展名保存为文本文件。用户控件允许对页功能进行分区和重用。第一次请求时&#xff0c;页框架立即将用户控件分析为从 System.Web.U…

Asp.net网站开发(一)LINQ TO SQL 之LINQ TO SQL类

datacontext类的方法 常用的方法&#xff1a; 执行sql命令的ExecuteQuery方法查询if(!IsPostBack){DataClasses1DataContext db new DataClasses1DataContext();string s "select * from student ";GridView1.DataSourcedb.ExecuteQuery<student>(s);GridVi…

Asp.net网站开发(三)成员资格和角色管理

成员资格管理 Membership类用于验证用户凭证并管理用户设置 Membership属性&#xff1a;ApplicationName获取或设置应用程序的名称。EnablePasswordReset获得一个值&#xff0c;指示当前成员资格提供程序是否配置为允许用户重置其密码。EnablePasswordRetrieval获得一个值&…

Asp.net网站开发(四)个性化用户设置

个性化用户设置 1.先新建一个网站&#xff0c;然后配置web.config文件<connectionStrings><add name"aspnetdbConnectionString" connectionString"Data Source.;Initial Catalogaspnetdb;Integrated SecurityTrue"providerName"System.Data…

微信公众号用户与网站用户的绑定方案

现在很多网站都已经建立了一套完整的用户账号体系&#xff0c;基于这套体系&#xff0c;再做其他应用的用户扩展就非常方便。例如&#xff0c;有了微软的outlook账户&#xff0c;就可以登录win8&#xff0c;可以登录微软的邮箱&#xff0c;还可以登录skype。同样地&#xff0c;…

为什么要把系统拆分成分布式的?为啥要用dubbo?_面向服务的分布式网站架构设计...

传统的架构但是如果要是有高并发的话&#xff0c;那么这样的架构就会出问题高并发的架构可以使用负载均衡的方式&#xff0c;设置一个负载均衡服务器&#xff0c;这个服务器根据不同tomcat服务器的压力来确定使用其中的一个服务器来处理用户请求&#xff0c;使得压力最小的处理…