我有一个 Dataframe ,我需要根据从UI请求中接收的条件进行筛选。请求示例:
{
"table": "abc",
"condition": "A=98 and C=73 and D='rendom_char'"
}
** Dataframe 示例:**
| | A类|B| C级|D级|
| - ------|- ------|- ------|- ------|- ------|
| 无|八十五|三十九|五十四|运输署|
| 1个|三十九|五十一|二十三|美国广播公司|
| 第二章|九十八|十七|七十三|定义|
| 三个|九十八|五十二|七十三|定义|
| 四个|八十五|五十二|二十一|第一|
| 五个|六十一|八十九|三十一|西维兹|
因此,假设我从UI获取"condition": "A=98 and C=73 and D='def'"
或"condition": "A=98 and C=73"
输出条件,结果如下所示:
| | A类|B| C级|D级|
| - ------|- ------|- ------|- ------|- ------|
| 第二章|九十八|十七|七十三|定义|
| 三个|九十八|五十二|七十三|定义|
我所面临的问题是如何转换字符串条件从用户界面到Python的形式,使我可以应用过滤器的数据。
2条答案
按热度按时间bihw5rsg1#
将
DataFrame.query
与替换=
一起使用,以使=
加倍:wwwo4jvm2#
或者,您可以使用pandasql以SQL方式查询panda Dataframe :