python - 使用多个切片从 Pandas 数据框中选择
问题描述
假设我有一个包含 100 列和 10,000 行的数据框。我正在尝试使用单个列名和切片的组合(即'A1'、'C1':'C3'、'D5':'D57'等)来提取多个列。当我尝试这个时:
dfSelect = df.loc[:, 'A1', 'D5':'D7']
Python 返回
IndexingError: Too many indexers
如果我试试这个:
dfSelect = df.loc[:, ['A1', 'D5':'D7']]
Python 返回
File "<ipython-input-2-1f38c6f634d4>", line 653
dfSelect = df.loc[:, ['A1', 'D5' : 'D7']]
^
SyntaxError: invalid syntax
我知道运行多个 dfs - 每个要切片的项目一个 - 然后连接生成的数据帧将起作用,但如果我有 50 多列要提取它不是很有效。
我也尝试过运行一个循环,但失败了。
for i in fieldLst:
dfSelect = pd.concat(df.loc[:, i])
TypeError: first argument must be an iterable of pandas objects, you passed an object of type "Series"
有什么我想念的方法吗?谢谢。
解决方案
推荐阅读
- java - 使用 HashSet 实现 Multiset
- php - Yii2 不工作,错误获取未知属性:common\models\Articles::id
- python - pandas 中的 groupby 和函数调用
- node.js - Electron 应用程序无法解析任何添加到 webpack 外部的节点模块
- yocto - BeagleBone 无法使用 systemd 启动
- javascript - 如何检查 Jquery 是否正确保存和嵌入?
- node.js - 如何在nodejs中将变量写入我的JS文件而不评估其值
- environment - 如何从 ExternalStorage 和多字体设置字体
- python - 图像生成器缺少 unet keras 的位置参数
- javascript - 使用 ng-template 清空原生元素