python常用的udf的简要说明 说明udf是在pandas数据处理和pyspark数据处理开发过程一个常用的逻辑,即自定义函数。虽然pandas和pyspark都提供了强大和灵活的内置处理逻辑,但是在遇到一些复杂的处理过程的时候,udf还是无法绕过的一步。 常用的udf类型 作用范围 方法名 备注 pd.Series map 把自定义函数映射到每一个元素上,同时可以把dict映射到元素上,通过key自动映射value 2024-05-24 python #python #udf
双拼进阶 双拼依旧存在的问题在经过了一段时间的联系后,双拼输入法的使用基本已经步入正轨了,日常的打字速度也基本达到并超越了之前使用全拼输入法的速度。日常的使用过程里也在各个场景里完成了针对全拼输入法的取代。而且在使用的过程里,逐渐的发现了双拼输入法最大的优势,其实不是击键次数少之类的,而是在打字的时候,可以精确的保证每个字的击键次数都是2次,这样可以在打字的过程中,保持一种非常稳定的节奏,在逐渐的熟练之后 2023-09-04 工具 #工具 #效率
双拼介绍 最近在学习使用双拼,这里记录一下在双拼的学习过程中的一些收获或者是发现的一些问题。 1. 为什么要学习双拼?近期在打字的时候突然发现自己的打字的速度好像到了一个瓶颈了,很难在有一些比较明显的提升,然后为了找出背后的原因初步分析了一些现在自己打字的过程中可能存在的一些问题: 击键不准;在打字的过程中,经常会出现击键不准的情况,比如按L的时候不小心按到了;,或者是出现了双击,比如同时按到了I和O 2023-05-24 工具 #工具 #效率
airflow使用mysql作为db airflow在使用过程中的各种组件是可以进行适当的替换的,方便大家在使用过程中采用比较符合自己技术栈的相关组件。比如,我们可以将airflow模型链接的数据库换成mysql 安装mysql服务 对mysql进行一定的配置 启动mysql:mysql 常见需要使用的数据库:create database airflowdb; 检查数据库创建是否成功:show databases; 给指定的用 2023-04-24 airflow #airflow #调度器
spark中使用left-semi-join left semi join是在Hive中常用的一种join方式,但是他和常用的join也会有一些不同。spark中也有一样的处理逻辑。那么使用过程中有哪些需要外注意到的东西呢? 1. 使用方法left semi join是IN/EXISTS的一种高效实现方法,可以用来处理两个DataFrame取交集的情况。 a = spark.createDataFrame( [ 2023-03-29 spark #spark #join #left semi join
tensorflow常用计算逻辑 记录tensorflow代码开发过程中常用的utils方法 1. 计算向量的cosine相似度 def cos_dis(tensor1, tensor2): """ cosine相似度:是计算两个向量之间的相似度常用的方法,通过两个向量之间的夹角大小来判断相似度。夹角越小,相似度越高 tensor1/tensor1: 维度一致的两个tensor,这里采用(n,)的标量作 2023-03-28 tensorflow #tensorflow #method
spark的udf函数声明 udf(user defined function)函数,是spark中针对内建函数无法满足用户需求是,提供给用户的一种自定义处理函数的方式。很好的扩展了用户在处理dataframe数据时候的自由度和便捷性。 0. 产生例子import pyspark.sql.functions as f from pyspark.sql.types import StringType df = spark 2023-03-27 spark #spark #udf
Hive-join操作优化 Join是Hive SQL操作中极为常见的一种,常出现在两个表处理数据的过程中互相关联的操作过程。Join操作也是Hive SQL中经常出现问题的一种操作,最常见的问题就是出现较为严重的数据倾斜,导致运行时间远超预期;或者是出现了笛卡尔积,导致输出的数据量和预期的数据量不一致。 Join的tedia能 只支持等值连接 底层处理的时候会将Hive SQL的代码转换成MapReduce过程,而且Red 2023-03-20 spark #spark #hive #join
linux下进行字符截断 在日常的操作中,我们经常会遇到需要对字符串进行截断的操作,如果是在python中可以直接通过对string的index进行筛序获得想要的子字符串。那么,在shell命令行中,有没有类似的操作方法呢?答案是有的,而且有多种实现方法~ 1. 变量截取 这种方法,可以在使用变量的时候进行快速截取,非常类似python中的a[:1]的使用方法。 使用方法如下: str='1234567890' # s 2023-03-08 Linux #Linux #string #cut
transformer常见面试题 transformer是现在面试过程中常见的一类问题,这里简单记录一下,方便后续查找。 transformer基本结构 transformer更新公式$$\begin{align}&\left{\begin{array}{lr}Q_i &= QW^{Q}_i \\K_i &= KW^{K}i & i=1,\cdots,8\\V 2023-02-24 machine-learning #machine-learning #transformer #interview