小编get*_*y22的帖子

用字典键值替换spark df中一列的值(pyspark)

我在pyspark中遇到了数据转换任务.我想用df中的一个列的所有值替换字典中指定的键值对.

dict = {'A':1, 'B':2, 'C':3}
Run Code Online (Sandbox Code Playgroud)

我的df看起来像这样:

+-----------++-----------+
|       col1||       col2|
+-----------++-----------+
|          B||          A|
|          A||          A|
|          A||          A|
|          C||          B|
|          A||          A|
+-----------++-----------+
Run Code Online (Sandbox Code Playgroud)

现在我想用dict中定义的键值对替换col1的所有值.

期望的输出:

+-----------++-----------+
|       col1||       col2|
+-----------++-----------+
|          2||          A|
|          1||          A|
|          1||          A|
|          3||          B|
|          1||          A|
+-----------++-----------+
Run Code Online (Sandbox Code Playgroud)

我试过了

df.na.replace(dict, 1).show()
Run Code Online (Sandbox Code Playgroud)

但是这也取代了col2上的值,它们将保持不变.

谢谢您的帮助.问候 :)

apache-spark pyspark spark-dataframe

4
推荐指数
1
解决办法
9747
查看次数

Gensim Word2Vec从预训练模型中选择次要词向量集

我在gensim中有一个大型的经过预训练的Word2Vec模型,我想从中使用预训练的词向量作为Keras模型中的嵌入层。

问题在于嵌入量很大,而且我不需要大多数单词向量(因为我知道哪些单词可以作为输入出现)。因此,我想摆脱它们以减小嵌入层的大小。

有没有一种方法可以根据单词白名单来保留所需的单词矢量(包括对应的索引!)?

python gensim word2vec keras word-embedding

4
推荐指数
1
解决办法
592
查看次数