【问题标题】:How to apply fuction on a pyspark dataframe column如何在 pyspark 数据框列上应用函数
【发布时间】:2020-04-21 16:55:46
【问题描述】:

我正在尝试将我的 pandas 代码转换为 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 数据框列上应用一个函数。谢谢。

【问题讨论】:

  • 搜索udf's (user defined function)

标签: python-3.x dataframe pyspark


【解决方案1】:

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

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']))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-18
    • 1970-01-01
    • 1970-01-01
    • 2018-02-25
    • 2022-11-13
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    相关资源
    最近更新 更多