加入收藏 | 设为首页 | 会员中心 | 我要投稿 大庆站长网 (https://www.0459zz.com/)- 科技、智能边缘云、事件网格、云计算、站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python C 根据列名拆分pandas数据框

发布时间:2023-12-22 07:03:55 所属栏目:Python 来源:DaWei
导读: 有没有办法根据列名拆分pandas数据框?作为一个例子,考虑数据帧有以下列df = [‘A_x’,’B_x’,’C_x’,’A_y’,’B_y’,’C_y’],我想创建两个数据帧X = [‘ A_x’,’C_x’]和Y = [‘A_y’

有没有办法根据列名拆分pandas数据框?作为一个例子,考虑数据帧有以下列df = [‘A_x’,’B_x’,’C_x’,’A_y’,’B_y’,’C_y’],我想创建两个数据帧X = [‘ A_x’,’C_x’]和Y = [‘A_y’,’C_y’].

我知道有可能这样做:

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

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

解决方法 你可以使用 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

(编辑:大庆站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章