[数学建模从入门到入土] pandas

数学建模从入门到入土 pandas

个人导航

知乎:https://www.zhihu.com/people/byzh_rc

CSDN:https://blog.csdn.net/qq_54636039

注:本文仅对所述内容做了框架性引导,具体细节可查询其余相关资料or源码

参考文章:各方资料

文章目录

注意

  1. 简单数据预处理先用excel做
  2. 复杂数据预处理用jupyter
  3. 全都处理好, 然后导出为csv, 再用py

读取

1.第一行有杂乱信息
py 复制代码
df = pd.read_csv(
    './Wimbledon_featured_matches.csv', encoding='gbk',
    skiprows=1 # 跳过第1行, 从2行开始读取
)

显示

1.横线被压缩成...
py 复制代码
pd.set_option("display.max_columns", None)   # 显示所有列
pd.set_option("display.width", None)         # 不限制总宽度(按终端/环境尽量铺开)
pd.set_option("display.max_colwidth", None)  # 单个单元格内容不截断(长字符串也全显示)

建议保存成excel再看

类型转换

py 复制代码
# 一维
s = pd.to_numeric(df[col], errors="coerce")
# 多维
df_numeric = df[cols].apply(pd.to_numeric, errors="coerce")

errors="coerce" 的意思是:强制转 ,转不了就变成 NaN(缺失值)

quantile()mean() 这类统计时,NaN 会被自动忽略 (默认 skipna=True

分组 group

1.拆成字典
py 复制代码
grouped = {
    依据内容: sub_df.reset_index(drop=True) # sub_df 的行索引重新设置为从 0 开始
    for 依据内容, sub_df in df.groupby("依据")
}
2.直接遍历
py 复制代码
for 依据内容, sub_df in df.groupby("依据"):
    ...

数据分析

1.序列中最多的前5个元素
py 复制代码
top5 = (
    pd.to_numeric(df['p1_distance_run_new'], errors='coerce')  # 只在统计时转数值
      .value_counts()                        # 统计频数
      .head(5)                               # 取前 5
)
2.第几分位数
py 复制代码
Q1 = s.quantile(0.25) # 第1四分位数
Q3 = s.quantile(0.75) # 第3四分位数
相关推荐
一只小小的土拨鼠42 分钟前
【深度解析】2026 年江西省研究生数学建模竞赛赛题 1:空间数据分析中的过拟合识别——地理探测器 q 统计量、OPGD 与过拟合检验框架
数学建模
阿里matlab建模师4 小时前
【机场停机位分配】matlab实现基于遗传算法的机场停机位分配优化研究
开发语言·算法·数学建模·matlab·全国大学生数学建模竞赛
2301_764441331 天前
基于Stackelberg博弈的分散式库存模型
python·算法·数学建模
ECT-OS-JiuHuaShan2 天前
什么是对和错?——“有针对性定义域的逻辑值的真伪”:认识论终极追问的公理化裁决
数据库·人工智能·算法·机器学习·数学建模
じ☆冷颜〃2 天前
Picard-Lindelöf 定理的多视角证明、推广与加权范数方法
经验分享·笔记·线性代数·数学建模
alxraves3 天前
医用超声图像模拟系统探头建模详细设计
数学建模
AI Dog3 天前
MathHub数学建模交流社区-V2
人工智能·机器学习·数学建模·阿里云
逻辑君4 天前
神经生物学研究【20260001】
人工智能·数学建模
通信小呆呆4 天前
从理想到现实:实际系统中非理想特性及其补偿方法
算法·数学建模·信号处理
苏奇奇4 天前
数学建模研赛论文重复率需要控制在多少?
数学建模·论文写作