Dataframe Pyspark货币转换器

Dataframe Pyspark货币转换器,dataframe,pyspark,currency,Dataframe,Pyspark,Currency,我有一个数据帧df,如下所示: df.show() 输出: +-----+--------+----------+ |price|currency| date| +-----+--------+----------+ | 10| USD|2018-07-03| | 10| USD|2018-03-19| | 8| SEK|2018-07-10| | 10| NOK|2018-05-25| | 5| EUR|2018-05

我有一个数据帧df,如下所示:

df.show()
输出:

+-----+--------+----------+
|price|currency|      date|
+-----+--------+----------+
|   10|     USD|2018-07-03|
|   10|     USD|2018-03-19|
|    8|     SEK|2018-07-10|
|   10|     NOK|2018-05-25|
|    5|     EUR|2018-05-13|
+-----+--------+----------+
我想将每个价格转换成欧元,并根据指定的日期放入price_EUR列

有人知道这样做的有效方法吗


虽然我可以简单地使用pandas dataframe,但我找不到在pyspark中实现它的方法。

创建一个udf并使用相同的API

从货币转换器导入货币转换器 导入pyspark.sql.F函数 从pyspark.sql.types导入FloatType c=电流转换器 换算货币=F.udflambda x,y:c.convertx,y,“欧元”,浮动类型 df=df。在“价格”列中,将“价格”、“货币”转换为“货币” 编辑:

首先使用以下命令安装python包

pip install currencyconverter

非常感谢。但是我不能让它工作:ModuleNotFoundError:没有名为“currency\u converter”的模块。你必须先安装api,我假设你已经安装了。检查编辑。是的,我把它用于熊猫数据帧。然而,从它创建udf似乎很棘手,我想。udf只允许您访问每一行数据帧。在udf内部,您可以使用python的任何函数、包或库,其使用方式与在pandas中使用的方式相同。现在可以使用了吗?该软件包也需要安装在所有工人身上。也许这就是问题所在。
pip install currencyconverter