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

Python数据处理

需要的库:

  • Pandas:数据操作的基石,提供 DataFrame(类似Excel表)和 Series(一列数据)数据结构。

  • NumPy:科学计算的基础,提供高性能的多维数组对象和数学函数。

  • Matplotlib:基础的可视化库,高度可定制。

  • Seaborn:基于 Matplotlib,提供更高级、更美观的统计图表,语法更简洁。

  • Scikit-learn:机器学习库,也提供了丰富的数据预处理工具。

  • openpyxl:打开excel数据必须要下载

一、excel类型+时间

import pandas as pd
import datetimefile_path='采集点1_2022111500-0072110329.xlsx'
#file_path="采集点1_2022111500-0072110329.xlsx"#单双引号都可以
df=read_excel(file_path,sheet_name='sheet1')
print(df.head(n=5))#输出前5行
print(df.tail(n=5))#输出后5行
print(df.info())#输出数据的信息
df['采集日期']=pd.to_datetime(df['采集日期'])#转换数据类型,以便后续处理时间
df['日期']=df['采集日期'].dt.date#提取日期
df['日期']=df['采集日期'].dt.year#提取年份
df['日期']=df['采集日期'].dt.time#提取时间#计算日均气温,按照时间分组
daily_avg_temp=df.groupby('日期')['测点温度(℃)'].mean().round(2)#两位小数#保存excel格式
daily_avg_temp.to_excel('采集点1日均气温.xlsx')#保存csv格式
daily_avg_temp.to_csv('采集点1日均气温.csv')#多表格合并
file_path=['采集点1_2024111500-0072110329.xlsx','采集点2_2024111500-0072110419.xlsx','采集点3_2024111500-0072110523.xlsx','采集点4_2024111500-0072310007.xlsx','采集点5_2024111500-0072310009.xlsx','采集点6_2024111500-0072310061.xlsx','采集点7_2024111500-0072310417.xlsx','采集点8_2024111500-869324057172789.xlsx','采集点9_2024111500-869324057176459.xlsx','采集点10_2024111500-869324057186292.xlsx'
]all_data=[]for file in file_path:df=pd.read_excel(file)df['采集时间']=pd.to_datetime(df['采集时间'])df['日期']=df['采集时间'].dt.datedaily_avg_temp=pd.groupby('日期')['测点温度(℃)'].mean()all_data.append(daily_avg_temp)all_data=pd.concat(all_temp,axis=1)#沿着列的方向拼成一个DateFrame,否则格式不对all_date.to_csv('地点1第三年日均气温.csv')

二、csv类型

默认第一列为索引

#读
df=pd.read_csv("地点1第三年日平均气温.csv",index_col=0)#第一列为日期索引,不用读,
#防止后面计算温度错误
df['日均气温']=df.mean(axis=1)#对每一行求均值
#重新写入,否则再次打开的还是旧文件
df.to_csv("地点1第三年日平均气温.csv")

df['新列']=……只储存在内存里的DataFrame,print(df)能够将新数据打印到屏幕,再次打开csv还是旧文件,因为没写盘

只有显式调用 to_csv() / to_excel() 才会真正把修改落盘。

http://www.dtcms.com/a/358796.html

相关文章:

  • 6.1 Update不能写复杂的逻辑
  • ReconDreamer
  • 前端浏览器调试
  • Python爬虫实战:构建Widgets 小组件数据采集和分析系统
  • Apple登录接入记录
  • Spring AI 的应用和开发
  • 突发,支付宝发布公告
  • GitHub 热榜项目 - 日榜(2025-08-30)
  • Unity笔记(八)——资源动态加载、场景异步加载
  • DbVisualizer:一款功能强大的通用数据库管理开发工具
  • 自动修改psd_生成套图 自动合并图片 自动生成psd文字层
  • Go 语言面试指南:常见问题及答案解析
  • 【具身智能】【机器人动力学】台大林佩群笔记-待持续更新
  • 索引结构与散列技术:高效数据检索的核心方法
  • HTS-AT模型代码分析
  • Shell脚本编程入门:从基础语法到流程控制
  • 本地运行 Ollama 与 DeepSeek R1 1.5B,并结合 Open WebUI 测试
  • 告别图片处理焦虑:用imgix实现智能、实时且高效的视觉媒体交付(含案例、截图)
  • Linux shell命令扩涨
  • HarmonyOS Router 基本使用详解:从代码示例到实战要点
  • 免费开源的 Gemini 2.5 Flash 图片生成器
  • Robolectric如何启动一个Activity
  • Coze源码分析-API授权-删除令牌-后端源码
  • SQL注入6----(其他注入手法)
  • 普蓝自研AutoTrack-4X导航套件平台适配高校机器人实操应用
  • 《Java反射与动态代理:从原理到实践》
  • 以声为剑,绘山河热血——刘洋洋《不惧》8月30日全网上线
  • 【深入解析——AQS源码】
  • OpenCV安装及其开发环境配置(Windows系统Visual Studio 2022)
  • 【物联网】MQTT / Broker / Topic 是什么?