首页 > 解决方案 > 如何在 pyspark 数据框列上应用功能

问题描述

我正在尝试将我的熊猫代码转换为 pyspark 数据框,并尝试在数据框的一列上应用函数。我在熊猫数据框中做了如下的事情。如下操作几个列值后,将新列添加到 pandas 数据框。

from currency_converter import CurrencyConverter

def convert_USD_INR(row):
     USD_amount = c.convert(row['Sales'], 'INR', 'USD', date=date(row['Calendar year'], row['Calendar month'], 1))
return USD_amount

salesData['Sales (INR)'] = salesData.apply(convert_USD_INR, axis=1)

有人可以指出将其转换为 pyspark 数据框的任何示例吗?基本上我想在 pyspark 数据框列上应用一个函数。谢谢。

标签: python-3.xdataframepyspark

解决方案


是的,谢谢我设法完成如下。如果这对某人有用,请分享解决方案。

from currency_converter import CurrencyConverter
from pyspark.sql.functions import *

def convert_USD_INR(sales, year, month):
     USD_amount = c.convert(sales, 'INR', 'USD', date=date(year, month, 1))
return USD_amount

convert_USD_INR_udf = udf(convert_USD_INR, DoubleType())

salesData = salesData.withColumn('Sales(INR)', gross_convert_AUD_USD_udf(salesData['sales'], salesData['year'], salesData['month']))

推荐阅读