6.13总结:Kettle、ETL
KettleKettle 是⼀款纯 Java 编写的开源 ETL ⼯具。 Kettle 是 PDI ( Pentaho Data Integeration )的前⾝。表⽰抽取、转换、装⼊和加载数据, 翻译成中⽂是⽔壶的意思,希望把各种数据放到⼀个壶⾥,像⽔⼀样,以⼀种指定的格式流出,表达数据流的含义。 Kettle 共有两类设计模式,转换( Transformation )和作业( Job );转换⽤于控制数据处理和流转,作业则⽤于转换集成和流程控制。 ETLETL 的 3 个字⺟分别代表 Extract (抽取)、 Transform (转换)和 Load (装载)。数据抽取:从数据源端的系统中,抽取⽬标端系统需要的数据。数据转换:从数据源端获取的数据按照业务需求,转换成⽬标端要求的数据形式,并对错误、不规范、不⼀致的数据(俗称”脏数据”)进⾏清洗和加⼯。数据装载:将转换后的数据装载到指定数据库或⽂件中。 练习1.处理等于 3000 抽取到 emp3000 ,不等于抽取到 empnot3000 计算每个员⼯的年薪 2.查询所有⼤于平均⼯资的员⼯信息 3.表 ...
影刀考试题
第一题流程截图 Python代码段 123456789101112131415161718192021222324252627282930313233import pandas as pddf=pd.DataFrame(list1)df["票房"]=df["票房"].astype(int)df=df.groupby("制片地区")["票房"].sum().reset_index()df=df.sort_values(by="票房",ascending=False).head(3)df.insert(0,"提交人","Tetuka")res=df.values.tolist()#3.0-3.5df=pd.DataFrame(list1)df=df[(df.评分!="-")]df["评分"]=df["评分"].astype(float)df["票房"]=df[&q...
上传代码仓库到Gitee和Github
Linux上传到Gitee准备工作如果你的系统尚未安装 Git,请先执行以下命令进行安装 安装Git工具12345678910# Ubuntu/Debian系统 sudo apt-get update sudo apt-get install git # CentOS/RHEL系统 sudo yum update sudo yum install git # Arch Linux系统 sudo pacman -S git 配置 Git 基本信息安装完成后,需要配置你的用户名和邮箱,这将显示在你的提交记录中 12git config --global user.name "你的用户名" git config --global user.email "你的邮箱地址" 在Gitee上创建仓库忽略 SSH方式SSH 方式可以避免每次推送都输入用户名和密码,提高效率: 123456# 生成SSH密钥(如果没有) ssh-keygen -t rsa -C "你的邮箱地址" # 查看公钥 cat ~/.ssh/id_rsa.pub...
智慧天气数据分析系统(测试项目)
项目介绍智慧天气数据分析系统面向气象研究人员、环保部门和公众用户,实现了多源气象数据采集、历史数据分析和气象灾害预警功能。 项目采用Python+Flask+MySQL+Nginx架构,前端使用HTML+CSS+JavaScript构建响应式界面,后端通过Flask处理API请求和业务逻辑,MySQL存储气象历史数据和分析结果,并且引入了机器学习算法(随机森林和支持向量机)优化气象预测准确率。 参与模块:数据采集和数据清理、基于机器学习的气象预测算法、结合历史数据的气象灾害预警模型、ECharts可视化仪表盘(包含温度变化曲线、降水统计图和分布热力图)、系统部署采用Docker容器化技术,通过Nginx实现负载均衡和静态资源分发。 帆软大屏开发数据表ER图 1. 气象站点表 (dim_weather_station) 字段名 类型 描述 键类型 示例值 station_id VARCHAR2(10) 气象站唯一编码 主键 GX001 station_name VARCHAR2(50) 气象站名称 南宁站 city VARCHAR2(20) 所属城市 南宁 ...
6.9总结:Pandas、爬虫
Python API 接⼝开发⽤法介绍API ( Application Programming Interface )是应⽤程序接⼝的简称 12345678910111213141516# 定义一个API接口@app.route("/")def index(): return "<a href='/list'><img src='/static/py11.png'></a>" # 定义一个API接口@app.route("/addSubmit", methods=["POST"])def addSubmit(): tid = request.form.get("tid") tname = request.form.get("tname") tcontent=request.form.get("tcontent") leixing=Mov...
5.16总结:Linux基础
查看ip命令:ifconfigIP: 192.168.48.129 文件夹规范在 Linux 系统里,不同的文件夹依据其设计定位,存放着特定类型的文件。 /bin存放着系统启动时需要的基本命令,如ls、cd、cp、mv等。这些命令是系统正常运行和用户进行基本操作所必需的,无论是在普通用户模式还是在单用户模式下都能使用。 /sbin主要存放系统管理员使用的系统管理命令,例如init、ifconfig、route等。这些命令通常需要较高的权限才能执行,用于系统配置、管理和维护等操作。 /etc用于存放系统的各种配置文件,如passwd(用户账户信息)、group(用户组信息)、fstab(文件系统挂载信息)、network(网络配置文件)等。系统在启动和运行过程中会读取这些配置文件,以确定系统的运行参数和设置。 /dev包含了系统中的设备文件,如硬盘、光驱、串口、终端等设备都在这个目录下有对应的文件。通过这些设备文件,用户和程序可以访问和控制硬件设备。 /home普通用户的主目录所在位置,每个用户都有一个以自己用户名命名的子目录,...
5.19总结:git相关
基本命令右键–git bash here–命令窗口(一般在对应工作区右键打开) 仓库区和工作区.git文件夹为仓库区:类似于一个数据存储着每一次提交的变化.git所在目录称为工作区,我们在这里创建项目和其他文件 123456git init:创建本地仓库 git add 文件名 #把文件添加到暂存区,暂存区存储将要被提交的文件变化git add * #上一条代码的文件名可换为*号表示添加所有文件git commit -m “说明文本” #提交暂存区存储变化并生成一个新的版本git status #查看命令状态(可选)git log #查看日志 Git服务器和远程仓库github.com 全球最大开源项目托管平台 https://github.com/Gitee.com 国内知名开源项目托管平台 码云 https://gitee.com gitee码云
5.19总结:Linux命令
Linux命令(搜索查看查找类)find 从指定目录查找文件-name <查询方式> 按照指定的文件名查找模式查找文件-mtime n 查找n天以前被修改过的所有文件。-exec<执行指令>:假设find指令的回传值为True,就执行该指令;-size <文件大小> 按照指定的文件大小查找文件 123find /root -name "*.pdf" find /root -name "*.pdf" -a -size +1M find /root -mtime +7 #七天前被修改过的文件 find /root -name "*.sql" -exec ls -l {} \; #查找文件并以ls -l形式显示 find /root -name "*.pdf" -exec rm -f {} \; head 与 tail 查看行头+ 尾-head -n +行数 文件名 (不加-n默认开头十行)tail -n -行数 文件名 (不加...
5.20总结:安装MySQL和Oracle
Linux网络配置类1234clear #清屏ifconfig #列出网卡信息ping ip地址 #看网络是不是连通free #查看内存使用情况 top 查看系统整体资源12345678910PID:进程的标识符。 USER:运行进程的用户名。 PR(优先级):进程的优先级。 NI(Nice值):进程的优先级调整值。 VIRT(虚拟内存):进程使用的虚拟内存大小。 RES(常驻内存):进程实际使用的物理内存大小。 SHR(共享内存):进程共享的内存大小。 %CPU:进程占用 CPU 的使用率。 %MEM:进程占用内存的使用率。 TIME+:进程的累计 CPU 时间。 ps 显示系统执行的进程12345ps -aux #查看所有用户所有进程 ps -ef #查看子父进程之间的关系(常用)ps -ef | grep "mysql" #查看mysql服务ps -ef | grep "oracle" #查看oracle服务 pstree 查看进程树1pstree 1660 #树状的形式显示进程的pid kill最常用的信号是:1 ...
5.23总结:函数
二重循环循环里面嵌套循环,外层循环先开始,内层循环结束后,再开始外层的下一个循环 123456789101112131415161718for i in `seq 1 5` do for j in `seq 1 5` do echo -n "$j" #内层循环 done echo "$i" #外层循环 done#乘法表(双重嵌套)for i in `seq 1 9` do for j in `seq 1 $i` do echo -n "$j*$i = $(($i*$j))" done echo "" done 循环控制只影响离自己最近的那个循环break 跳出当前循环(如果有多重循环会继续执行上一层循环)continue 跳出语句(不再往下执行),继续执行当前循环的下一个元素 函数自定义函数1234567891011121314151617name(){ echo "hello 黄文哲"}getSum(){ sum=$((...