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

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

有沒有比使用 .drop() 更好的方法來通過從 DataFrame 中刪除幾列來保留幾列?

有沒有比使用 .drop() 更好的方法來通過從 DataFrame 中刪除幾列來保留幾列?

海綿寶寶撒 2023-01-04 14:27:48
想知道是否有更好的方法將所需的列保留在數(shù)據(jù)框中,如果我需要保留的列很少,而要刪除的列是其中的幾個import numpy as npdf1 = pd.DataFrame(np.random.randint(10,99, size=(13, 26)), columns =list('abcdefghijklmnopqrstuvwxyz'))df1輸出:a   b   c   d   e   f   g   h   i   j   ... q   r   s   t   u   v   w   x   y   z0   78  60  27  38  21  93  74  47  16  53  ... 79  56  40  41  87  80  14  82  12  501   84  73  59  46  91  43  22  28  57  52  ... 27  65  81  72  68  90  68  61  22  442   56  37  29  52  57  14  87  82  46  90  ... 67  57  29  14  55  30  46  72  56  913   86  44  46  79  41  74  32  49  42  32  ... 33  34  40  17  30  78  29  75  80  524   14  89  90  79  67  17  34  39  57  37  ... 93  49  78  91  26  73  40  48  91  365   16  62  32  87  56  81  82  17  59  57  ... 84  24  97  39  46  40  68  53  73  406   69  72  16  47  37  20  27  56  13  37  ... 10  28  17  35  39  14  51  85  69  537   81  34  35  20  66  44  86  23  94  57  ... 38  45  76  53  82  72  64  34  81  438   95  90  97  31  18  85  74  18  43  22  ... 20  20  96  25  53  76  55  96  58  989   73  53  72  94  55  33  22  40  11  64  ... 84  66  85  34  94  32  78  72  10  6210  73  24  57  17  63  24  94  25  59  84  ... 34  45  27  28  47  23  38  80  45  4111  69  18  22  42  95  38  16  47  68  36  ... 59  69  35  39  78  75  85  86  53  5512  46  27  53  77  48  15  57  90  32  57  ... 32  79  18  67  71  86  54  11  36  5113 rows × 26 columns比如說,我只需要保留一些隨機(jī)列,例如 e,u,r,q,j ;有沒有更好的方法讓它們必須在df1.drop()傳入 21 個列名的情況下運行?我在任何問題中都找不到更好的方法。編輯:與 在熊貓數(shù)據(jù)框中選擇多個列中的解決方案不同, 因為要選擇刪除的列是隨機(jī)的而不是順序的
查看完整描述

2 回答

?
慕的地10843

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

您可以將要保留的所有行復(fù)制到一個新的數(shù)據(jù)框中,然后像這樣覆蓋您的第一個數(shù)據(jù)框:


    import numpy as np

    import pandas as pd        

    df1 = pd.DataFrame(np.random.randint(10,99, size=(13, 26)), columns =list('abcdefghijklmnopqrstuvwxyz'))

    df2 = pd.DataFrame()

    columns_to_keep = ["e", "r", "u"]

    for column in columns_to_keep:

        df2[column] = df1[column]

    df1 = df2

    df1

或者使用 for 語句刪除不在列表中的任何項目:


    columns_to_keep = ["e", "r", "u"]

    for column_name, column_data in df1.iteritems():

      if column_name not in columns_to_keep:

        df1 = df1.drop(column_name, axis=1)

    df1


查看完整回答
反對 回復(fù) 2023-01-04
?
收到一只叮咚

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

讓我們只使用列過濾并重新分配回 df1:


df1 = pd.DataFrame(np.random.randint(10,99, size=(13, 26)), columns =list('abcdefghijklmnopqrstuvwxyz'))    

columns_to_keep = ["e", "r", "u"]

df1 = df1[columns_to_keep]

df1.head()

輸出:


    e   r   u

0  65  95  13

1  58  42  75

2  95  34  12

3  43  20  79

4  83  27  47



查看完整回答
反對 回復(fù) 2023-01-04
  • 2 回答
  • 0 關(guān)注
  • 208 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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