python - Pandas DataFrame 查询 Python
问题描述
我正在尝试查询数据框的值。我的数据由 6 列 G-p1、G-p2、Gc、H-p1、H-p2、Hc 组成。所有列的值都是“左”或“右”,因为它们代表父母/孩子是否具有左撇子或右撇子基因型或惯用手。我想查询父母和孩子左手习惯的值。我试过了:
test1 = pd.DataFrame(data)
test1 = test1.query({
'H-p1': 'left',
'H-p2': 'left',
'H-c': 'left'})
train_data = test1
predict_data = test1
model.fit(test1)
predict_data = predict_data.copy()
predict_data.drop('H-p1', axis=1, inplace=True)
predict_data.drop('H-p2', axis=1, inplace=True)
predict_data.drop('H-c', axis=1, inplace=True)
pred = model.predict_probability(predict_data)
print(pred.to_string())
但我得到这个错误:
ValueError: expr must be a string to be evaluated, <class 'dict'> given
有什么建议么?谢谢!
解决方案
query
方法接收一个字符串表达式,类似于您用于 loc 过滤器的字符串表达式。
尝试这个:
test1 = test1.query("`H-p1` == 'left' and `H-p2` == 'left' and `H-c` == 'left'")
train_data = test1
反引号``
用于指定列名。
推荐阅读
- reflection - 如何使用反射读取自定义注释值?
- python - Pandas groupby 并应用自定义函数比较两列以更改另一列
- python - tensorflow.keras 模型的准确性、损失和验证指标在 30 个训练阶段保持不变
- c++ - 在 C++ 中的指针数组之间创建链接?
- excel - Excel 不会在计划的 Excel 任务中加载 COM 加载项
- html - 挣扎于简单的 CSS 东西
- vb.net - 从图像中多次读取二维条码时出错(GDI+ 中发生一般错误。)
- reactjs - 如何将 React 钩子用于函数并将函数作为道具传递以创建通用模式?
- java - 在单链表的java实现中,为什么不打印链表的最后一个元素?
- javascript - 反应渲染中的嵌套返回html