gpt4 book ai didi

python - Memsql::Streamliner Python 转换

转载 作者:行者123 更新时间:2023-11-30 22:57:30 25 4
gpt4 key购买 nike

我正在使用 Memsql::Streamliner::Transform (Python) 实用程序。必须重写一个转换方法才能提供自定义转换功能。

def 变换(自身、sql_context、数据帧、记录器):

dataframe.column[0] 是一个字节数组(JSON 字符串)。

如何将字节数组转换为具有命名列的 DataFrame?

目标:访问转换后的 DataFrame 中的各个列。

最佳答案

您可以使用dataframe.rdd访问底层rdd并映射它以将每个字节字符串转换为包含您的列的列表。您可以通过提供列列表作为 createDataframe 的第二个参数,将生成的 rdd 返回为具有命名列的数据框。

类似以下内容应该有效:

def parse(row):
bytestring = row[0]
json_data = convert_bytes_and_parse_json(bytestring)
return [ json_data["mycolumn1"], json_data["mycolumn2"] ]

parsedRDD = dataframe.rdd.map(parse)
parsedDf = sql_context.createDataframe(parsedRDD, ["mycolumn1", "mycolumn2"])

# now you can access columns by name
parsedDf.select(parsedDf["mycolumn1"])

关于python - Memsql::Streamliner Python 转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36606462/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com