第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python以相反的字母順序排列數(shù)據(jù)框列

Python以相反的字母順序排列數(shù)據(jù)框列

慕容3067478 2022-07-05 17:43:39
我目前的數(shù)據(jù)框列的順序為df.columns = ['S1FF', 'S1Ipmax', 'S2POA',        ...       'M04Vpmax', 'M04elec_event', 'M04group', 'M04met_event', 'M04mode',       'M04validation_1min', 'M04validation_2min', 'M04S1T', 'M04S2T',       'M04datetime']  # Columns start with S1,S2, M01 to M24我想以相反的字母順序?qū)λ鼈冞M(jìn)行排序。我現(xiàn)在的代碼是df = df.reindex(sorted(df.columns), axis=1)我現(xiàn)在的輸出是df.columns = ['M01FF', 'M01Ipmax', 'M02POA',        ...       'S1FF', 'S1Ipmax', 'S2POA']但我的預(yù)期輸出是反向字母順序df.columns = ['S1FF', 'S1Ipmax', 'S2POA','M01FF', 'M01Ipmax', 'M02POA',        ...       'M23FF', 'M24Ipmax', 'M24POA']
查看完整描述

1 回答

?
慕標(biāo)5832272

TA貢獻(xiàn)1966條經(jīng)驗 獲得超4個贊

key通過字符串的第一個值使用參數(shù),這里S和Mwith reverse=True:


L = ['M01FF', 'M01Ipmax', 'M02POA', 'S1FF', 'S1Ipmax', 'S2POA']

df = pd.DataFrame(columns=L)

print (df)

Empty DataFrame

Columns: [M01FF, M01Ipmax, M02POA, S1FF, S1Ipmax, S2POA]

Index: []


df = df[sorted(df.columns, key=lambda x: x[0], reverse = True)]

print (df)

Empty DataFrame

Columns: [S1FF, S1Ipmax, S2POA, M01FF, M01Ipmax, M02POA]

Index: []

編輯:


import natsort as ns

s = ns.natsorted([x for x in df.columns if x[0] == 'S'])

m = ns.natsorted([x for x in df.columns if x[0] == 'M'])

df = df[s + m]


查看完整回答
反對 回復(fù) 2022-07-05
  • 1 回答
  • 0 關(guān)注
  • 142 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號