根据列名称拆分熊猫数据框

分段式

有没有一种方法可以根据列名称拆分熊猫数据框?作为示例,请考虑数据框具有以下列df = ['A_x', 'B_x', 'C_x', 'A_y', 'B_y', 'C_y'],我想创建两个数据框X = ['A_x', 'B_x', 'C_x']Y = ['A_y', 'B_y', 'C_y']

我知道可以这样做:

d = {'A': df.A_x, 'B': df.B_x, 'C': df.B_x}
X = pd.DataFrame (data=d)

但这并不理想,因为在我的情况下,我有2200列df有没有更优雅的解决方案?

算了吧

您可以使用df.filter(regex=...)

import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.randn(2, 10),
                  columns='Time A_x A_y A_z B_x B_y B_z C_x C_y C-Z'.split())
X = df.filter(regex='_x')
Y = df.filter(regex='_y')

产量

In [15]: X
Out[15]: 
        A_x       B_x       C_x
0 -0.706589  1.031368 -0.950931
1  0.727826  0.879408 -0.049865

In [16]: Y
Out[16]: 
        A_y       B_y       C_y
0 -0.663647  0.635540 -0.532605
1  0.326718  0.189333 -0.803648

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章