【AI+编程】利用chatGPT编写python程序处理日常excel工作提升效率小技巧

之前写过一篇AI+编程相关的文章  【人工智能】为啥我最近很少写python编程文章了,浅谈AI+编程+RPA提升工作效率    。  最近有同学私信我,怎么利用AI编程来提升工作效率,除了文章里讲的 使用AI帮忙写算法、代码提示、代码优化、不同语言转换(如JAVA转为python)等, 还有哪些具体的应用场景。

这里举一个工作中的例子,作为一个管理(或者HR), 每个月初可能需要对员工提交的excel表格评绩效,然后汇总到一张总表上。 

1、传统的做法, 复制粘贴内容到新的表格里。假设团队人数少复制粘贴还好说,如果员工人数多了呢,这个事情就扯淡了。

2、普通人智能的做法,可能借助RPA工具(比如影刀)写一个脚本来完成多个excel复制粘贴,  这个场景举例不一定合适,自己没试过,但确实能解决重复劳动的事情。

3、程序员的做法,如果没有AI的时候,就会想到用循环遍历读取excel,  用pandas来处理生成新的excel数据,如果对pandas语法不熟还需要查阅相关资料。

4、这里我们交给coze完成,用chatGPT4。

这里假定姓名、岗位、绩效分数 是在excel的某个固定位置,我以下提问,写得比较low,将就看。

Q:我有一个文件夹/Users/lwj/python_test_data/ , 文件夹下有很多xlsx格式excel,每个表格sheet0中 A1是姓名、C1是岗位, D3是分数,我要快速提取数据生成表格汇总.xlsx  , 新表格  表头分别 A1姓名,B1岗位,C1分数, 新表格按照分数从高到低排列放在对应列下。请给出可以运行的python代码。

A:理解了你的需求后,这里是一段可以完成你任务的Python代码。该代码会从每个表中提取指定的数据,并按分数降序排列后生成一个新的汇总Excel文件。

import pandas as pdimport os
# 设置要查找文件的路径folder_path = '/Users/lwj/python_test_data/'
# 初始化一个空的DataFrame列表,用于汇总数据data_frames = []
# 遍历文件夹中的所有文件for file_name in os.listdir(folder_path):    if file_name.endswith('.xlsx'):        # 构建每个文件的完整路径        file_path = os.path.join(folder_path, file_name)        # 用read_excel读取特定单元格的值        df = pd.read_excel(file_path, sheet_name=0, header=None)        # 创建一个包含所需数据的临时DataFrame        temp_df = pd.DataFrame({            '姓名': [df.at[0, 0]],            '岗位': [df.at[0, 2]],            '分数': [df.at[2, 3]]        })        # 将临时DataFrame添加到汇总列表中        data_frames.append(temp_df)
# 使用concat合并所有DataFramesummary_df = pd.concat(data_frames)
# 按照'分数'对数据进行降序排序summary_df.sort_values('分数', ascending=False, inplace=True)
# 将DataFrame的索引重置,因为concat不会自动重排索引summary_df.reset_index(drop=True, inplace=True)
# 将合并后的数据输出到一个新的Excel文件中summary_file_path = '/Users/lwj/python_test_data/表格汇总.xlsx'summary_df.to_excel(summary_file_path, index=False)  # 不写入索引到文件
print(f"汇总的数据已存储至 {summary_file_path}")

代码正常运行,结果符合预期。

图片

图片

AI+编程怎么说呢,还是要结合自己的应用场景,尽量用准确的表述让AI帮忙写代码。如果你平时只是问很基本的问题, 如用Python编写一个冒泡排序之类的,你不会发现AI的真正价值。另外,在问AI的同时,其实也是变相训练自己的逻辑表达问题的能力,让AI能懂且傻瓜式编程。

最后,你还会觉得李彦宏说的以后不存在程序员这个职业是危言耸听么?附上之前写的一篇文章【人工智能】李彦宏:以后不会存在“程序员”这种职业了。问你害不害怕?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/750801.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Axios异步框架和Json数据格式

一.Axios异步框架 对原生的Ajax进行封装,简化书写。 给大家提供一下axios的源码: 链接:https://pan.baidu.com/s/1ZSrUBe0B4dIq7d6NpUzqOQ 提取码:gr86 将源码粘贴到项目之中。 1.基础使用 首先单独创建一个Servlet&#xf…

Godot 学习笔记(2):信号深入讲解

文章目录 前言相关链接环境信号简单项目搭建默认的信号先在label里面预制接收函数添加信号 自定义无参数信号为了做区分,我们在label新增一个函数 自定义带参数信号Button代码label代码连接信号 自定义复杂参数信号自定义GodotObject类ButtonLabel连接信号 信号函数…

数字IC实践项目(9)—SNN加速器的设计和实现(tiny_ODIN)

数字IC实践项目(9)—基于Verilog的SNN加速器 写在前面的话项目整体框图完整电路框图 项目简介和学习目的软件环境要求 Wave&CoverageTiming,Area & Power总结 写在前面的话 项目介绍: SNN硬件加速器是一种专为脉冲神经网…

uniapp样式穿透修改uview的按钮button图标

需求&#xff1a; 想给按钮icon和text改字体颜色&#xff0c;结果发现图标颜色并没有改变 .u-button{width: 300rpx;background-color: aliceblue;color: #aaaa7f;margin-top: 20rpx; }接下来用样式穿透解决 1、首先&#xff0c;给UI组件包裹一层view <view class"t…

ElasticSearch:数据的魔法世界

​ 欢迎来到ElasticSearch的奇妙之旅&#xff01;在这个充满魔法的搜索引擎世界中&#xff0c;数据不再是沉闷的数字和字母&#xff0c;而是变得充满活力和灵动。无论你是刚刚踏入数据探索的小白&#xff0c;还是已经对搜索引擎有所了解的行者&#xff0c;本篇博客都将为你揭示…

unity内存优化之AB包篇(微信小游戏)

1.搭建资源服务器使用(HFS软件(https://www.pianshen.com/article/54621708008/)) using System.Collections; using System.Collections.Generic; using UnityEngine;using System;public class Singleton<T> where T : class, new() {private static readonly Lazy<…

【集成开发环境】-VS Code:C/C++ 环境配置

简介 VS Code&#xff0c;全称Visual Studio Code&#xff0c;是一款由微软开发的跨平台源代码编辑器。它支持Windows、Linux和macOS等操作系统&#xff0c;并且具有轻量级、高效、可扩展等特点&#xff0c;深受广大开发者的喜爱。 VS Code拥有丰富的功能特性&#xff0c;包括…

c语言(字符串函数和内存函数的模拟实现)

1、模拟strlen&#xff08;临时变量法&#xff09; #include <stdio.h> #include <assert.h> int my_strlen(const char* str); int main() {char str[] "abcdefh";int ret my_strlen(str);printf("%d", ret);return 0; } int my_strlen( c…

代码随想录算法训练营第四十七天|198.打家劫舍, 213.打家劫舍II , 337.打家劫舍III

198.打家劫舍 https://leetcode.com/problems/house-robber/description/ 思路&#xff1a; 经典的动态规划问题&#xff0c;首先确定dp 数组记录的是打劫到第i家时的收获&#xff0c; dp[0] 0&#xff0c; dp[1] values[0]. 然后到第i 家有两个选择&#xff0c; 一个是打劫…

koa2+vue3通过exceljs实现数据导出excel文档

服务端安装exceljs依赖 npm i exceljs服务端实现代码 实现导出excel文件工具方法 const ExcelJS require(exceljs); /*** description: 导出excel文件* param {*} fileHeader 导出的表头* param {*} data 导出的数据* param {*} ctx 上下文对象* return {*}*/ async funct…

计算机三级网络技术综合题第三题、第四题详细解析

第三大题 DHCP报文分析&#xff08;10分&#xff09; 一、DHCP工作流程&#xff08;一般情况下&#xff09; 报文摘要 对应上面报文1—4 报文1、3DHCP&#xff1a;Request&#xff1b; 报文2、4DHCP&#xff1a;Reply。 例题&#xff08;第三套&#xff09;&#xff1a;在一…

Flutter 当涉及Listview的复杂滑动布局良好布局方式

目录 引 代码以及概叙 详细解释 SingleChildScrollView shrinkWrap 属性 NeverScrollableScrollPhysics 引 当我们构建界面&#xff0c;很多时候都会需要显示一个能滑动的流布局&#xff0c;同时这个布局还要有些其他的界面元素&#xff0c;同时在flutter中&#xff0c;滑…

大型项目中的敏捷开发实践:原则、方法与工具的应用经验分享

引言 在软件开发领域&#xff0c;大型项目往往伴随着高风险和复杂性&#xff0c;传统的瀑布模型往往难以应对快速变化的需求和不确定的环境。而敏捷开发方法以其灵活、快速响应变化的特点&#xff0c;逐渐成为大型项目管理的有力武器。本文旨在分享我在大型项目中应用敏捷开发…

程序员入行忠告!

点击下方“JavaEdge”&#xff0c;选择“设为星标” 第一时间关注技术干货&#xff01; 关注我&#xff0c;紧跟本系列专栏文章&#xff0c;咱们下篇再续&#xff01; 作者简介&#xff1a;魔都技术专家兼架构&#xff0c;多家大厂后端一线研发经验&#xff0c;各大技术社区头部…

十大经典排序之归并排序

文章目录 概要整体架构流程代码实现小结 概要 归并排序&#xff08;Merge sort&#xff09;是建立在归并操作上的一种有效的排序算法。该算法是采用分治法&#xff08;Divide and Conquer&#xff09;的一个非常典型的应用。 作为一种典型的分而治之思想的算法应用&#xff0…

十五、自回归(AutoRegressive)和自编码(AutoEncoding)语言模型

参考自回归语言模型&#xff08;AR&#xff09;和自编码语言模型&#xff08;AE&#xff09; 1 自回归语言模型&#xff08; AR&#xff09; 自回归语言模型&#xff08;AR&#xff09;就是根据上文内容&#xff08;或下文内容&#xff09;预测下一个&#xff08;或前一个&…

安装OpenEBS,镜像总是报错ImagePullBackOff或者ErrImagePull的解决方法

按照 KubeSphere 官方文档安装 OpenEBS&#xff0c;镜像总是报错ImagePullBackOff或者ErrImagePull的解决方法 helm 有很多更换 源 的文章&#xff0c;有一些是写更换阿里云的源&#xff0c;但是阿里云的源根本没更新OpenEBS的镜像。 在网上找到1个可用的源&#xff1a; 可用的…

VSCODE的常用插件

1、中文设置 &#xff08;1&#xff09;搜索 chinese Chinese (Simplified) Language Pack for Visual Studio Code C/C Extension Pack &#xff08;2&#xff09;配置 通过使用“Configure Display Language”命令显式设置 VS Code 显示语言&#xff0c;可以替代默认 UI…

计算最长的字符串长度

本题要求实现一个函数&#xff0c;用于计算有n个元素的指针数组s中最长的字符串的长度。 函数接口定义&#xff1a; int max_len( char *s[], int n ); 其中n个字符串存储在s[]中&#xff0c;函数max_len应返回其中最长字符串的长度。 裁判测试程序样例&#xff1a; #inclu…

Django性能优化

1.服务器CPU太高的优化 1>在Django项目中使用line_profiler进行性能剖析&#xff0c;您需要遵循以下步骤来设置并使用它&#xff1a; 注&#xff1a;此种方式似乎中间件无法启动&#xff01;&#xff01;&#xff01; 要使用Django与line_profiler进行特定视图的性能测试…