Я пытаюсь выбрать строки в таблице и создать новую таблицу с информацией из исходной таблицы, используя 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' |
+--------------------------------+--------------+-------+----------+--------------+--------------+
I 'Я уверен, что я просто пытаюсь позвонить post_code
неправильно, но попробовал все из документации PETL и не могу понять это.
Любая помощь очень ценится.