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

Polars中如何不截断显示结构体列并选取结构体单个字段?

查看结构体列完整内容与选取单个字段的解决方法

1. 查看data_file列的完整内容

FMT_STR_LEN仅对普通字符串列生效,对结构体类型无效,可通过以下方式完整查看:

若使用PySpark

  • 将结构体转为JSON字符串后关闭截断显示:
    from pyspark.sql.functions import to_json, col
    df.withColumn("data_file_full", to_json(col("data_file"))).show(truncate=False)
    
  • 或直接收集数据后逐行打印:
    for row in df.collect():
        print(row.data_file)
    

若使用Polars

  • 将结构体转为字符串并关闭截断:
    import polars as pl
    df.with_columns(pl.col("data_file").cast(pl.Utf8)).show(truncate=False)
    
  • 或转换为Pandas DataFrame后显示(需提前设置Pandas显示参数):
    import pandas as pd
    pd.set_option('display.max_colwidth', None)
    print(df.to_pandas())
    

2. 选取结构体的单个字段

直接通过层级索引即可,不同框架写法如下:

PySpark

# 方式1:字符串索引
df.select("data_file.目标字段名").show()

# 方式2:使用col函数
from pyspark.sql.functions import col
df.select(col("data_file.目标字段名")).show()

Polars

# 方式1:字符串索引
df.select(pl.col("data_file.目标字段名"))

# 方式2:链式调用
df.select(pl.col("data_file").目标字段名)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 00:15:08