美文网首页
pyspark向量装配与笛卡尔积

pyspark向量装配与笛卡尔积

作者: 米斯特芳 | 来源:发表于2021-08-21 15:13 被阅读0次

向量装配VectorAssembler:对每一行,将多个列的元素组成一个向量
笛卡尔积Interaction:这个也不知道怎么翻译好,先对集合做笛卡尔积,然后对每个元组结果做累乘,得到一个元素为向量的列

from pyspark.ml.feature import Interaction, VectorAssembler
from pyspark.sql import SparkSession

spark = SparkSession\
    .builder\
    .appName("InteractionExample")\
    .getOrCreate()

df = spark.createDataFrame(
    [(1, 1, 2, 3, 8, 4, 5),
     (2, 4, 3, 8, 7, 9, 8),
     (3, 6, 1, 9, 2, 3, 6),
     (4, 10, 8, 6, 9, 4, 5),
     (5, 9, 2, 7, 10, 7, 3),
     (6, 1, 1, 4, 2, 8, 4)],
    ["id1", "id2", "id3", "id4", "id5", "id6", "id7"])

assembler1 = VectorAssembler(inputCols=["id2", "id3", "id4"], outputCol="vec1")
assembled1 = assembler1.transform(df)# 将["id2", "id3", "id4"]装配为一个元素为向量的列
assembler2 = VectorAssembler(inputCols=["id5", "id6", "id7"], outputCol="vec2")
assembled2 = assembler2.transform(assembled1).select("id1", "vec1", "vec2")
# 对["id1", "vec1", "vec2"]求笛卡尔积后,每个元组内的元素累乘,得到一个元素为向量的列
interaction = Interaction(inputCols=["id1", "vec1", "vec2"], outputCol="interactedCol")
interacted = interaction.transform(assembled2)
interacted.show(truncate=False)

相关文章

  • pyspark向量装配与笛卡尔积

    向量装配VectorAssembler:对每一行,将多个列的元素组成一个向量笛卡尔积Interaction:这个也...

  • BI技巧丨粒度切换

    白茶在很久之前,写过关于笛卡尔积的两个函数。 GENERATE函数与CROSSJOIN函数。 传送门:《笛卡尔积》...

  • 数量级与向量积——笔记

    数量级与向量积 一、两向量的数量级 1、定义: 为与的夹角 2、数量积的性质: 等价于 3、数量积的运...

  • 向量外积的高中数学运用

    向量积,数学中又称外积、叉积,物理中称矢积、叉乘,是一种在向量空间中向量的二元运算。与点积不同,它的运算结果是一个...

  • 向量代数和空间解析几何

    个人重点1.数量积,向量积,混合积2.平面方程,直线方程,平面与直线的位置关系(关键:♦♦平面的法线向量,直线的方...

  • 线性代数的本质(笔记3)(完)

    1. 叉积与点积 点乘,也叫数量积。结果是一个向量在另一个向量方向上投影的长度,是一个标量。 叉乘,也叫向量积。结...

  • 三、连接查询

    内连接 1、笛卡尔积 语法 无条件筛选 有条件筛选 什么是笛卡尔积?笛卡尔积就是将A和B表中的行任意组合,得到一个...

  • 笛卡尔积

    笛卡尔积,是指集合A中元素与B中元素所有的两两组合。 如A=(a,b),B=(1,2),那么笛卡尔积为(a1,a2...

  • 笛卡尔积

    笛卡尔乘积:笛卡尔乘积是指在数学中,两个集合X和Y的笛卡尓积(Cartesian product),又称直积表示为...

  • 笛卡尔积

    之前写一个SKU的插件,用到了【笛卡尔积】,明白其原理,但是就是写不出来 看来功力尚浅,需要努力 后来借鉴了网上的...

网友评论

      本文标题:pyspark向量装配与笛卡尔积

      本文链接:https://www.haomeiwen.com/subject/ytadbltx.html