[数学建模从入门到入土] 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四分位数
相关推荐
数模竞赛Paid answer6 小时前
2021年深圳杯数学建模C题配电网可靠性和故障软自愈研究解题全过程论文及程序
算法·数学建模·数据分析·深圳杯
数模竞赛Paid answer1 天前
2026年华数杯数学建模A题微构体中填充导电介质的仿真优化解题全过程及程序
数学建模·数据分析·华数杯
数模竞赛Paid answer1 天前
2021年深圳杯数学建模B题背向瑞利散射光纤激光传感器设计解题全过程论文及程序
数学建模·数据分析·深圳杯
数模竞赛Paid answer1 天前
2026年五一杯数学建模B题多工序协同作业问题求解全过程文档及程序
数学建模·数据分析·五一杯
数模竞赛Paid answer2 天前
2026年五一杯数学建模A题煤矿巷道支护问题求解全过程文档及程序
数学建模·数据分析·五一杯
数模竞赛Paid answer2 天前
2026年五一杯数学建模C题边坡预警问题求解全过程文档及程序
算法·数学建模·五一杯
数模竞赛Paid answer2 天前
2021年深圳杯数学建模A题火星探测器着陆控制方案解题全过程论文及程序
算法·数学建模·深圳杯
smppbzyc2 天前
2026华数杯数学建模A题原创论文分享
数学建模·数学建模竞赛·华数杯·全国大学生数学建模竞赛·华数杯数学建模·2026华数杯
数模竞赛Paid answer3 天前
2024年五一杯数学建模A题钢板最优切割路径问题求解全过程论文及程序
数学建模·数据分析·五一杯
茜茜数模3 天前
2026华数杯A题完整思路+论文+代码:微构体中填充导电介质的仿真优化
数学建模·华数杯