【问题标题】:Python - generate avro schema for csv/xls filePython - 为 csv/xls 文件生成 avro 模式
【发布时间】:2020-02-17 10:35:51
【问题描述】:

我有一个 XLS/CSV 文件,我正在将其读入 pandas 数据框。我想从此数据框中生成一个 avro 模式。

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

data_frame = pd.read_excel(INPUT_PATH)

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

【问题讨论】:

    标签: python pandas dataframe schema avro


    【解决方案1】:

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

    将数据类型映射到与 avro 兼容的数据类型(pandas 中的“object” -> avro 中的“string”)

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

    例如:

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

    然后可以使用 Fastavro 库来解析此架构

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-11-22
      • 2014-08-24
      • 2019-07-19
      • 1970-01-01
      • 2021-10-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多