[数学建模从入门到入土] 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四分位数
相关推荐
Allen_LVyingbo2 天前
GTC2026前瞻(二)Agentic AI 与开源模型篇+(三)Physical AI 与机器人篇
开发语言·人工智能·数学建模·机器人·开源·知识图谱
RechoYit4 天前
数学建模——评价与决策类模型
python·算法·数学建模·数据分析
EQUINOX14 天前
倍增优化dp,P10976 统计重复个数
算法·数学建模·动态规划
木头左5 天前
量化交易策略中的卖出认沽策略从保险思维到博弈思维的逻辑转换
数学建模
小白zlm5 天前
基于指数趋近律的永磁同步电机速度环传统滑模控制
单片机·嵌入式硬件·数学建模·电机控制·smc·pmsm
alfred_torres6 天前
[TIE 2023]离体心脏灌注中主动脉压调节的基于半参数模型的自适应控制
数学建模
MoRanzhi12037 天前
Pillow 图像颜色模式与颜色空间转换
图像处理·python·数学建模·pillow·颜色空间转换·颜色模式·图像通道
Gavin_Huangw8 天前
金融数学4.1_随机微分方程概论
数学建模·金融
Gavin_Huangw8 天前
金融数学3.2_随机积分概论
数学建模·金融
Gavin_Huangw8 天前
金融数学3.3_随机积分概论
数学建模·金融