🖱 ⌨个人主页: Love And Program的个人主页
💖💖如果对你有帮助的话希望三连💨💨支持一下博主
python是目前非常火爆的语言,其在人工智能、数据分析领域都占有一席之地,无论是学习还是工作,都会给你带来相当大的帮助,因此我在这给大家 推荐一个快速提升自己的网站👉👉 牛客网,他们现在的IT题库内容很丰富,属于国内做的很好的了,可以在下图中看见里面试题应有尽有,现在这个系列是数据分析系列,里面同样也有人工智能系列的题目欢迎大家订阅本专栏进行自助练习🥰🥰
系列专栏链接:
前言
继续学习中级函数 部分内容。
用户等级的中位数
现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔):
牛客网运营同学有一个活动,需要统计所有用户等级的中位数,但是为了去掉一些非常不活跃的账号,于是他们只统计刷题数量不低于10题的那部分用户。
输入描述:
输出描述:
直接输出计算的中位数,输出类型为整型Int。
- 读题找出重点:所有用户等级的中位数
-
median()
函数->手册地址 - 通过翻译手册内容,我们可以了解到,两者都是返回所选行列数值的平均值,本质上只有返回格式不同的差异。
import numpy as np
import pandas as pd
data= 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','Python'],
"Number_of_submissions":[120,1,2,1,3]
})
int(data[data['Num_of_exercise'] > 10]['Level'].median())
#原本为605,为符合题意,加入int后只取整数部分,固为6
以上为Series
写法,你甚至可以使用DataFrame
写法尝试一遍,结果也是一样的,代码如下:
data2=pd.DataFrame()
data2.insert(0,'Level',data[data['Num_of_exercise'] > 10]['Level'])
int(data2.median())
最终代码整理如下:
DA15 牛客网用户等级的中位数
import pandas as pd
Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')
# 1、
print(int(Nowcoder[Nowcoder['Num_of_exercise'] > 10]['Level'].median()))
# 2、
data= pd.DataFrame()
data.insert(0,'Level',Nowcoder[Nowcoder['Num_of_exercise'] > 10]['Level'])
print(int(data.median()))
# 3、
print(int(Nowcoder.loc[Nowcoder['Num_of_exercise'] > 10,:].Level.median()))
用户常用语言有多少
现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔):
你想知道这个文件中记录了多少种常用语言,一并输出这些语言的名字。
输入描述:
输出描述:
直接输出计算的种类数,输出类型为整型Int。
换行再输出有哪些语言,排序按照在csv中的出现顺序排布
- 读题找出重点:输出常用语言的名字
-
nunique()
/unique()
函数
unique()
Return unique values of Series object.
- 翻译:返回序列对象的唯一值,即统计序列中不同的值。
nunique()
Return number of unique elements in the object.
- 翻译:返回返回对象中唯一元素的数目,即统计序列中不同元素的数目
实现代码:
import numpy as np
import pandas as pd
data= 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'],
"Number_of_submissions":[120,1,2,1,3]
})
print(int(data['Language'].nunique()))
print(data['Language'].unique())
最终代码整理如下:
DA15 牛客网用户等级的中位数
import pandas as pd
Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')
print(int(Nowcoder['Language'].nunique()))
print(Nowcoder['Language'].unique())
目前还是记函数部分,不难记,多尝试练熟了就简单了