猿问

通过变量选择 ETL 表

我正在尝试选择表中的行并使用 PETL 使用原始表中的信息创建一个新表。


我现在的代码是:


import petl as etl



table_all = (

    etl.fromcsv("practice_locations.csv")

        .convert('Practice_Name', 'upper')

        .convert('Suburb', str)

        .convert('State', str)

        .convert('Postcode', int)

        .convert('Lat', str)

        .convert('Long', str)

)



def selection(post_code):

    table_selected = etl.select(table_all, "{Postcode} == 'post_code'")

    print(post_code)

    etl.tojson(table_selected, 'location.json', sort_keys=True)

但是我似乎无法table_selected按原样使用选择功能进行填充。etl.select如果我替换post_code为看起来像,呼叫将起作用


table_selected = etl.select(table_all, "{Postcode} == 4510")


输出正确的表,如下所示:


    +--------------------------------+--------------+-------+----------+--------------+--------------+

    | Practice_Name                  | Suburb       | State | Postcode | Lat          | Long         |

    +================================+==============+=======+==========+==============+==============+

    | 'CABOOLTURE COMBINED PRACTICE' | 'Caboolture' | 'QLD' |     4510 | '-27.085007' | '152.951707' |

    +--------------------------------+--------------+-------+----------+--------------+--------------+

我确定我只是想以post_code错误的方式调用,但已经尝试了 PETL 文档中的所有内容,但似乎无法弄清楚。


任何帮助深表感谢。


蛊毒传说
浏览 226回答 1
1回答
随时随地看视频慕课网APP

相关分类

Python
我要回答