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

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

如何將數(shù)據(jù)幀轉換為整潔的形式(unpivot)?

如何將數(shù)據(jù)幀轉換為整潔的形式(unpivot)?

HUX布斯 2023-09-02 15:55:55
我有以下數(shù)據(jù)框df = pd.read_excel('...'):Date     Id V1  V2  V32020-1-1  1 10 100 NaN2020-1-1  2 20 120  232020-1-1  3 11 101 NaN我需要將其轉換為Date      Name Value2020-1-1  1_V1    102020-1-1  1_V2   1002020-1-1  2_V1    202020-1-1  2_V2   1202020-1-1  2_V3    232020-1-1  3_V1    112020-1-1  3_V2   101該列是、、等的列名稱'Name'的串聯(lián)。這些值將被忽略。IdV1V2V3NaN如何使用dataframe功能來實現(xiàn)它?
查看完整描述

2 回答

?
萬千封印

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


讓我們嘗試一下melt


s = df.melt(['Date','Id']).dropna()

s['name'] = s.pop('variable') +'_'+ s.pop('Id').astype(str)

s

       Date  value  name

0  2020-1-1   10.0  V1_1

1  2020-1-1   20.0  V1_2

2  2020-1-1   11.0  V1_3

3  2020-1-1  100.0  V2_1

4  2020-1-1  120.0  V2_2

5  2020-1-1  101.0  V2_3

7  2020-1-1   23.0  V3_2


查看完整回答
反對 回復 2023-09-02
?
料青山看我應如是

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

你可以這樣做df.melt

df1 = df.melt(['Date','Id']).dropna()

df1 = df1.assign(Name=df1.Id.astype(str) + '_' + df1.variable)

df1[['Date','Name','value']]

輸出


? ? ? ?Date? Name? value

0? 2020-1-1? 1_V1? ?10.0

1? 2020-1-1? 2_V1? ?20.0

2? 2020-1-1? 3_V1? ?11.0

3? 2020-1-1? 1_V2? 100.0

4? 2020-1-1? 2_V2? 120.0

5? 2020-1-1? 3_V2? 101.0

7? 2020-1-1? 2_V3? ?23.0


查看完整回答
反對 回復 2023-09-02
  • 2 回答
  • 0 關注
  • 125 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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