python - 用petl将一个值插入一行?
问题描述
我正在使用 petl 并试图弄清楚如何将值插入特定行。
我有一个看起来像这样的表:
+----------------+---------+------------+
| Cambridge Data | IRR | Price List |
+================+=========+============+
| '3/31/1989' | '4.37%' | |
+----------------+---------+------------+
| '4/30/1989' | '5.35%' | |
+----------------+---------+------------+
我想将价目表设置为100
Cambridge Data 所在的行4/30/1989
。这是我到目前为止所拥有的:
def insert_initial_price(self, table):
import petl as etl
initial_price_row = etl.select(table, 'Cambridge Data', lambda v: v == '3/31/1989')
这选择了我需要插入的行100
,但我不确定如何插入它。petl
似乎没有“插入值”功能。
解决方案
我建议不要使用select
.
要更新字段的值,请使用convert
.
请参阅包含许多示例的文档:https ://petl.readthedocs.io/en/stable/transform.html#petl.transform.conversions.convert
我还没有测试过,但这应该可以解决它:
import petl as etl
table2 = etl.convert(
table,
'Price List',
100,
where = lambda rec: rec["Cambridge Data"] == '4/30/1989',
)
推荐阅读
- c# - 如何在 WPF 中安全地显示随机生成的密码
- python - 第二次加载 Keras 模型时出错。Feed_dict 错误
- ebpf - stdio.h 标头不适用于 eBPF 内核程序
- bitbucket-server - 如何使用 Javascript API Atlassian Bitbucket?
- css - 在 reactJs 中动态和有条件地更改按钮的 css
- python - 嵌套类中的作用域如何?
- javascript - 如何在窗口中使用 JS 三元运算符。滚动对象
- java-native-interface - nvcc 在编译 JNI 代码时生成无效错误
- android - 找不到 Gradle DSL 方法:'implementation()' (Android React Native)
- asp.net-mvc - 设置 / 到 /home 的默认路由