python - 如何从数据框中获取以特定值开头的列列表?
问题描述
我有 df 有不同的列,其中一些包含列表,我想获取所有包含列表的列,所以我只能在它们上运行函数。
东风:
Name Test_Column1 Test_Column2 Test_Column3
A ['a', 'b'] Test ['b']
所以理想情况下,我想获取列列表 ['Test_Column1','Test_Column3']
解决方案
这不干净,但您可以执行以下操作:
pd.DataFrame({"listcol":[[1, 2], [2, 3]], "normalcol":[1, 2]})
for col in df:
if all(df.loc[:,col].apply(lambda x: isinstance(x, list))):
print("all values in", col, "are of type list!")
而不是打印,然后您可以保存它们。这仅在列中的所有元素都是列表类型时才有效。你可以把它换出来any()
或你自己的支票。我确信有一种更简洁的方法可以在不需要循环的列中应用它,但它让我无法理解。
推荐阅读
- c - 如何显示从矩阵获得的字符串?
- openwrt - OpenWRT - 仅允许 LAN <> WAN 之间的 Internet / 禁止 lan 可以访问 WAN 网络
- reactjs - 从另一个类调用 React 中的 handleSubmit
- vue.js - 推文按钮数据 URL 未在更改时更新
- javascript - Victory onClick 事件不更新填充颜色
- c++ - 我怎样才能为我自己的班级专门化一个标准概念?
- mobx - 我可以创建一个在 React 渲染函数中计算的 mobx 以像 useMemo() 一样使用吗?
- html - 如何在html中使用jpg作为背景图片
- clojure - 你如何用空格分割用户输入的字符串
- amazon-web-services - AWS:阻止所有存储桶公共访问会影响来自其他 AWS 账户的访问吗?