当前位置: 首页 > news >正文

中级函数三

DA20 牛客用户刷题量的方差与提交次数的标准差

题目描述
计算所有用户的刷题量的方差和代码提交次数的标准差,结果保留两位小数。

正确代码

import pandas as pd
df = pd.read_csv("Nowcoder.csv")print(f"{df['Num_of_exercise'].var():.2f}")
print(f"{df['Number_of_submissions'].std():.2f}")

说明var() 是样本方差(默认 ddof=1),std() 是样本标准差。

扩展知识

  • 方差衡量数据偏离均值的程度。
  • 标准差是方差的平方根,单位与原数据一致,更具可解释性。

DA21 大佬用户成就值比例

题目描述
计算每个 7级用户 的成就值占所有用户总成就值之和的比例,并以 Series 形式输出。

正确代码

import pandas as pd
Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')# 提取7级用户的成就值
seven_achievements = Nowcoder[Nowcoder['Level'] == 7]['Achievement_value']
# 所有用户的成就值总和
total_sum = Nowcoder['Achievement_value'].sum()# 计算每个7级用户占比
print(seven_achievements / total_sum)

扩展知识

  • 这种“个体 / 总体”比例常用于贡献度分析。
  • 结果是一个 Series,每行对应一个7级用户的占比(小数形式)。
  • 适合后续可视化或排序找出“头部用户”。

DA22 牛客网用户最高的正确率

题目描述
只考虑刷题量大于10题的用户,计算每个用户的“正确率”(刷题量 / 提交次数),并输出其中的最大值,保留3位小数。

⚠️ 注意:这里的“正确率”是简化模型,实际应为“通过题数 / 总提交数”,但题目定义为 Num_of_exercise / Number_of_submissions

正确代码

import pandas as pd
Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')# 筛选刷题量 > 10 的用户
filtered = Nowcoder[Nowcoder['Num_of_exercise'] > 10]# 计算每个用户的“正确率”
accuracy = filtered['Num_of_exercise'] / filtered['Number_of_submissions']# 输出最大值,保留三位小数
print(f"{accuracy.max():.3f}")

优化说明:避免重复写筛选条件,先过滤再计算更清晰。

扩展知识

  • 正确率 = 通过题数 / 总提交数,值越接近 1 表示效率越高。
  • 限制 Num_of_exercise > 10 避免偶然性(如只做1题且一次通过)。

DA23 统计牛客网用户的名字长度

题目描述
统计每个用户名的字符长度,并输出带行号的结果。

正确代码

import pandas as pd
Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')# 使用 .str.len() 计算每个名字的长度
print(Nowcoder['Name'].str.len())

扩展知识

  • .str.len() 是 Pandas 对字符串列的向量化操作,高效且简洁。
  • 输出结果自动包含原始索引(即行号),符合题目要求。
  • 其他常用字符串方法:
    • .str.lower() / .str.upper():大小写转换
    • .str.contains("pattern"):模糊匹配
    • .str.strip():去除空格
    • .str.split():分割字符串

✅ 本节核心知识点总结

函数/操作用途示例
var()样本方差df['x'].var()
std()样本标准差df['x'].std()
/ total_sum计算占比subset / df['col'].sum()
filter + /条件下计算比率(a / b).max()
.str.len()字符串长度df['name'].str.len()
http://www.dtcms.com/a/358762.html

相关文章:

  • 如何使用 DeepSeek 帮助自己的工作?—— 从效率工具到能力延伸的实战指南
  • BGP路由协议(四):工作原理
  • Redis 持久化配置
  • 使用python格式化nginx配置文件
  • 【系统分析师】高分论文:论系统测试技术及应用
  • xAI发布全新编码模型 grok‑code‑fast‑1!
  • SpringBoot防止重复提交(2)
  • day44-Ansible变量
  • 联合体和枚举——嵌入式学习笔记
  • 每日算法题【二叉树】:二叉树的最大深度、翻转二叉树、平衡二叉树
  • 【系统分析师】高分论文:论软件的系统测试及应用
  • 栈溢出问题
  • Redis-数据类型的常用操作命令
  • uart学习
  • Jdk动态代理 Cglib动态代理
  • MYSQL表结构优化场景
  • 解构机器学习:如何从零开始设计一个学习系统?
  • folium地图不显示加载不出来空白问题解决
  • SAP PP模块的MPS
  • 福彩双色球第2025100期篮球号码分析
  • git在push和clone等操作时显示‘: Invalid argument
  • 优选算法:二分查找
  • #5:Nginx核心使用技术
  • Java 学习笔记(基础篇12)
  • 小狼毫输入法中让数字键盘上的数字键不再选择候选词而是与原始输入一起直接上屏
  • 计算机视觉与深度学习 | 基于深度学习的图像特征提取与匹配算法综述及MATLAB实现
  • 互联网大厂大模型应用开发岗位面试:技术点详解与业务场景演练
  • nacos3端口漂移问题
  • shell编程-核心变量知识
  • LeetCode - 234. 回文链表