假设我有一个数据框 df1,其中列“color”包含一堆颜色,另一个数据框 df2 包含包含各种短语的列“phrase”。
我想加入两个数据帧,其中 d1 中的颜色出现在 d2 中的短语中。我不能使用d1.join(d2, d2("phrases").contains(d1("color")),因为它会加入该词出现在短语中的任何地方。例如,我不想匹配像 scaRED 这样的词,其中 RED 是另一个词的一部分。我只想在颜色在短语中作为一个单独的词出现时加入。
我可以使用正则表达式来解决这个问题吗?当我需要引用表达式中的列时,我可以使用什么函数以及语法如何?