繁体   English   中英

Python - 为 csv/xls 文件生成 avro 模式

[英]Python - generate avro schema for csv/xls file

我有一个 XLS/CSV 文件,我正在读入 pandas dataframe。 我想从这个 dataframe 生成一个 avro 模式。

我是 python 和 pandas 的新手。 请帮忙。

data_frame = pd.read_excel(INPUT_PATH)

我想从这个数据帧动态生成一个 avro 模式。 请帮忙

我找到了解决方案。 我提取了 pandas dataframe 中字段的数据类型并将其保存在字段名称中。

将数据类型映射到与 avro 兼容的数据类型(pandas 中的“对象”-> avro 中的“字符串”)

创建了一个 avro 模式的模板,并将替换的字段名称和数据类型放在“字段:[]”部分中,并将其发布到注册表。

例如:

    schema = {"type": "record",
            "name": schemaName,
          "fields": [
              {"name": key, "type": value} for (key, value) in myDict.items()
          ]
          }

然后可以使用 Fastavro 库来解析这个模式

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM