python - 根据字符串属性索引拆分 Pandas 数据框

标签 python python-3.x pandas

我正在尝试将数据集拆分为两种类型的数据点。目前我有一个具有这种格式的 pandas 数据框。

CS1001    True    value1
CM1001    False   value2
CS1002    True    value3

现在我想将其分成 S 和 M 数据帧,如下所示:

S 框架:

C1001    True    value1
C1002    True    value3

M 框架:

C1001    False   value2

现在我首先遇到两个问题,我似乎无法将前 4 个字符与此分组。

data.groupby(data.index[:4])

然后我无法编辑索引值来删除 S/M。我以前没有使用过 pandas,所以我觉得我正在监督一个明显的解决方案,但我无法弄清楚。

最佳答案

IIUC:

In [15]: data
Out[15]:
            1       2
CS1001   True  value1
CM1001  False  value2
CS1002   True  value3

In [16]: data.groupby(data.index.str[:2]).groups
Out[16]:
{'CM': Index(['CM1001'], dtype='object'),
 'CS': Index(['CS1001', 'CS1002'], dtype='object')}

从索引值中删除第二个字母:

In [5]: df.index = df.index.str[:1] + df.index.str[2:]

In [6]: df
Out[6]:
           1       2
C1001   True  value1
C1001  False  value2
C1002   True  value3

关于python - 根据字符串属性索引拆分 Pandas 数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45099544/

相关文章:

python - 为什么 3 个输出用于 python 中的 2 个比较?

python - pip install中 "Failed building wheel for X"是什么意思?

pandas - pandas 中的扩展 dtypes 似乎有一个查询错误

python - 将 pandas.DataFrame 列的字符串值拆分为数组

python - 为什么我们需要每个类有多个搜索向量? (sqlalchemy 可搜索)

python - Pyparsing:提取可变长度、可变内容、可变空白子串

python - 简单(但具体)的监听器和发送器 Python 3 DBus 示例

python - sqlite3.操作错误: near "CSV1": syntax error

python - 来自 pandas 系列的 Spark DataFrame

python - 为什么所有对象都使用相同的坐标填充?