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

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

逐行從 DataFrame 中提取列名到 Series

逐行從 DataFrame 中提取列名到 Series

一只甜甜圈 2021-09-11 20:50:03
我想將列表中的列名提取到按每行中的值過濾的系列中In [1]: import pandas as pd   In [2]: df =pd.DataFrame({'colA':[1,0,1], 'colB':[0,0,1], 'colC':[1,0,0]})    In [3]: print(df)   colA  colB  colC0     1     0     11     0     0     02     1     1     0結果系列應如下所示:0    [colA, colC]1              []2    [colA, colB]dtype: object這是我想出的折磨人的解決方案:In [4]: df2 = df.TIn [5]: l = [df2[df2[i]>0].index.values.tolist() for i in range(3)]In [6]: print(pd.Series(l))0    [colA, colC]1              []2    [colA, colB]dtype: object有沒有一種不那么折磨人的方式來做到這一點?
查看完整描述

1 回答

?
慕尼黑5688855

TA貢獻1848條經驗 獲得超2個贊

您可以np.where假設您的數據幀由 0 和 1 組成,并從結果創建一個系列:


x = np.where(df,df.columns,'')

pd.Series([' '.join(i).split() for i in x])

0    [colA, colC]

1              []

2    [colA, colB]


查看完整回答
反對 回復 2021-09-11
  • 1 回答
  • 0 關注
  • 305 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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