You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Palantir Foundry代码库中不使用transform/transform_df导入数据集并返回值列表

我来帮你梳理下Palantir Foundry里的这两个需求,给你实际可用的解决方案:

在Foundry中无需transform/transform_df导入数据集并提取值列表

1. 直接用Foundry SDK加载数据集(无transform装饰器)

如果你不需要构建流水线,只是想在脚本、Code Workbook或者交互式环境里直接访问数据集并提取值列表,完全可以绕开transform/transform_df装饰器,用Foundry SDK的Dataset类直接加载。

具体代码示例:

from foundry import Dataset
import pandas as pd

def get_dataset_value_list(dataset_path, target_column):
    # 替换成你的数据集路径(比如 /your-project/datasets/your-dataset)或RID
    dataset = Dataset(dataset_path)
    # 把数据集加载为Pandas DataFrame
    df = dataset.read_pandas()
    # 提取目标列的所有值转为列表
    return df[target_column].tolist()

# 调用函数直接拿到结果
my_value_list = get_dataset_value_list("/my-team/projects/customer-data/datasets/user-profiles", "email")
print(my_value_list)

这种方式适合做数据探查、临时计算或者非流水线的脚本任务,调用函数就能直接拿到内存中的值列表,完全不受transform流水线的限制。

2. 以DataFrame为输入返回值列表的通用方法

不管你的DataFrame是从Dataset加载的,还是其他方式生成的,都可以写一个普通的Python函数来处理,不需要任何Foundry特定的装饰器:

def convert_df_to_value_list(input_df, column_name):
    # 可选:先检查列是否存在,避免报错
    if column_name not in input_df.columns:
        raise ValueError(f"找不到列 {column_name},请检查列名是否正确")
    # 把指定列转为列表返回
    return input_df[column_name].tolist()

# 使用示例:假设df是已经加载好的DataFrame
customer_ids = convert_df_to_value_list(df, "customer_id")

关于transform/transform_df的补充说明

你提到用transform装饰器后无法访问输入文件,其实transform系列装饰器的核心是构建Foundry流水线中的数据集转换步骤,它们的作用是生成新的数据集输出,而不是返回内存中的值列表。如果你的需求只是提取值做临时计算,完全不需要用transform,直接用上面的方法更贴合需求。

内容的提问来源于stack exchange,提问作者Gavisha BN

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 19:18:00