python dataframe调整列顺序_更改pandas dataframe 列的顺序

转自:https://www.cnblogs.com/zhoudayang/p/5414020.html

这是我的df:

Net Upper Lower Mid Zsore

Answer option

More than once a day 0% 0.22% -0.12% 2 65

Once a day 0% 0.32% -0.19% 3 45

Several times a week 2% 2.45% 1.10% 4 78

Once a week 1% 1.63% -0.40% 6 65

怎样将mid这一列移动到第一列?

Mid Upper Lower Net Zsore

Answer option

More than once a day 2 0.22% -0.12% 0% 65

Once a day 3 0.32% -0.19% 0% 45

Several times a week 4 2.45% 1.10% 2% 78

Once a week 6 1.63% -0.40% 1% 65

解答:

We can use ix to reorder by passing a list:

In [27]:

# get a list of columns

cols = list(df)

# move the column to head of list using index, pop and insert

cols.insert(0, cols.pop(cols.index('Mid')))

cols

Out[27]:

['Mid', 'Net', 'Upper', 'Lower', 'Zsore']

In [28]:

# use ix to reorder

df = df.ix[:, cols]

df

Out[28]:

Mid Net Upper Lower Zsore

Answer_option

More_than_once_a_day 2 0% 0.22% -0.12% 65

Once_a_day 3 0% 0.32% -0.19% 45

Several_times_a_week 4 2% 2.45% 1.10% 78

Once_a_week 6 1% 1.63% -0.40% 65

Another method is to take a reference to the column and reinsert it at the front:

In [39]:

mid = df['Mid']

df.drop(labels=['Mid'], axis=1,inplace = True)

df.insert(0, 'Mid', mid)

df

Out[39]:

Mid Net Upper Lower Zsore

Answer_option

More_than_once_a_day 2 0% 0.22% -0.12% 65

Once_a_day 3 0% 0.32% -0.19% 45

Several_times_a_week 4 2% 2.45% 1.10% 78

Once_a_week 6 1% 1.63% -0.40% 65

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值