作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我刚刚开始使用 jinja2 并尝试从数据帧生成文本行。我的模板 weather.txt
如下所示:
{% for key, value in x.iterrows %}
The day {{ df["date"] }} was {{ df["weather"] }}.
{% endfor %}
数据框天气
看起来像这样:
date weather
0 2017-03-31 warm
1 2017-04-21 cold
2 2017-07-01 rainy
现在我真的不知道如何从中生成所需的输出。当我使用此代码时:
template = env.get_template("weather.txt")
output = template.render(x = weather)
print(output)
我得到TypeError:'method'对象不可迭代
最佳答案
正如警告所述,iterrows
是一种方法,因此您需要使用括号:
{% for _, row in weather.iterrows() %}
The day {{ row["date"] }} was {{ row["weather"] }}.
{% endfor %}
假设您的数据框确实名为weather
,这应该可以工作
关于python - 如何在 jinja2 中循环 pandas 数据框的行和列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50762922/
我是一名优秀的程序员,十分优秀!