亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

如何用一行代碼刪除python中的多列?

如何用一行代碼刪除python中的多列?

慕姐8265434 2021-12-26 15:09:16
我正在嘗試刪除數據框中的以下列:1,2,101:117,121:124,126。到目前為止,我發現刪除列的兩種方法是:df.drop(df.columns[2:6],axis=1)df.drop(df.columns[[0,3,5]],axis=1) 但是如果我嘗試df.drop(df.columns[1,2,101:117,121:124],axis=1)我收到“索引過多”錯誤我也試過這個a=df.drop(df.columns[[1,2]],axis=1)b=a.drop(a.columns[99:115],axis=1)c=b.drop(b.columns[102:105],axis=1)d=c.drop(c.columns[103],axis=1)但這并不是出于某種原因刪除我想要的列。
查看完整描述

3 回答

?
偶然的你

TA貢獻1841條經驗 獲得超3個贊

使用np.r_到切片:


import numpy as np


df.drop(columns=df.columns[np.r_[1, 2, 101:117, 121:124, 126]])

import pandas pd

df = pd.DataFrame(np.random.randint(1, 10, (2, 130)))

df.drop(columns=df.columns[np.r_[1, 2, 101:117, 121:124, 126]])

#     0    3    4    5    6 ... 120 124 125  127

#0    6    1    3    7    2 ...   8   7   2    6

#1    1    9    2    5    3 ...   7   3   9    4


查看完整回答
反對 回復 2021-12-26
?
海綿寶寶撒

TA貢獻1809條經驗 獲得超8個贊

這應該有效:

df.drop(df.columns[[indexes_of_columns_you_want_to_delete]],axis=1,inplace=True)


查看完整回答
反對 回復 2021-12-26
?
慕姐4208626

TA貢獻1852條經驗 獲得超7個贊

請試試這個:


import numpy as np

import pandas as pd

input_df.drop(input_df.columns[[np.r_[0,2:4]]],axis=1, inplace = True)


查看完整回答
反對 回復 2021-12-26
  • 3 回答
  • 0 關注
  • 339 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號