<< All versions

Skill v1.0.0

currentAutomated scan100/100
cas-bigdatalab/piflow/data-type-converter
──Details
PublishedOctober 23, 2026 at 12:17 AM
Content Hashsha256:f6efef42a9ea6e5f...
Git SHAad8d0108a54a
──Files
Files (1 file, 3.3 KB)
SKILL.md3.3 KBactive
SKILL.md · 140 lines · 3.3 KB

version: "1.0.0" name: data_type_converter description: | 数据类型转换工具。转换数据字段的类型,支持数值、字符串、日期等类型互转。 当用户提到类型转换、数据格式转换、字段类型修改等需求时使用此skill。 即使用户没有明确说出"类型转换",只要任务涉及改变字段的数据类型,就应该使用此skill。

name_zh: 数据类型转换算子 input_params:

  • name: input

type: string required: true description: 输入文件路径(支持CSV/TSV/Excel/JSON等)

  • name: output

type: string required: true description: 输出文件路径

  • name: conversions

type: string required: true description: 转换规则,格式:字段名:目标类型,多个用逗号分隔

  • name: date_format

type: string required: false default: "%Y-%m-%d" description: 日期格式(用于日期类型转换)

  • name: errors

type: string required: false default: "coerce" description: 错误处理方式(raise/coerce/ignore)

output_params:

  • name: output

type: csv_file description: 转换后的数据文件 tag: 数据转换 publisher: COMMUNITY


Data Type Converter 数据类型转换 Skill

功能概述

本skill用于转换数据字段的类型,支持:

  • 数值转换:int, float
  • 字符串转换:str
  • 日期转换:datetime
  • 布尔转换:bool
  • 分类转换:category

触发条件

当用户请求以下任务时,应使用此skill:

  • 数据类型转换
  • 字段格式转换
  • 日期格式化
  • 数值格式化

支持的目标类型

类型说明示例
int整数"123" → 123
float浮点数"123.45" → 123.45
str字符串123 → "123"
datetime日期时间"2024-01-01" → datetime
bool布尔值"true" → True
category分类类型优化内存

使用方法

基本类型转换

bash
python scripts/run_data_type_converter.py \
--input data.csv \
--output converted.csv \
--conversions "age:int,score:float,name:str"

日期类型转换

bash
python scripts/run_data_type_converter.py \
--input data.csv \
--output converted.csv \
--conversions "date:datetime" \
--date_format "%Y-%m-%d"

多字段转换

bash
python scripts/run_data_type_converter.py \
--input data.csv \
--output converted.csv \
--conversions "id:int,amount:float,date:datetime,category:category"

参数说明

参数必填说明
--input是输入文件路径
--output是输出文件路径
--conversions是转换规则
--date_format否日期格式,默认"%Y-%m-%d"
--errors否错误处理,默认"coerce"

错误处理方式

方式说明
raise遇到错误时抛出异常
coerce转换失败设为NaN
ignore保留原值

输出示例

[OK] Data type conversion completed!
Input file: data.csv
Output file: converted.csv
Conversions:
- age: object → int64
- score: object → float64
- date: object → datetime64[ns]
Total rows: 1000
Conversion errors: 5

环境要求

bash
pip install pandas numpy openpyxl
All versions