pandas 将一行拆分为多行,将多行合并为一行
生活随笔
收集整理的這篇文章主要介紹了
pandas 将一行拆分为多行,将多行合并为一行
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
需求描述
- 在今天的數據需求,現在要統計各個場景下的類目種類數,并列出對應都有哪些類目。
- ?現在面臨的問題是:每個客戶的應用場景不同,購買的類目也有多種。
🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞🎞
數據形式
數據處理前:
?最終統計的結果:
拆開來看,分兩大塊一部分是統計最適場景的類目數、一部分是統計最適場景的類目組合?
解決思路:
1、首先將原始數據中用到的列提取出來,一行拆分為多行
2、對原始數據進行去重處理,得到最新的數據
- 統計最適場景的類目數
? ? ? ?使用pandas中的pivot_table()。
- 統計最適場景的類目組合
? ? ? ? 將各個場景下的,類目進行拼接。
具體實現代碼:
1、首先將原始數據中用到的列提取出來,一行拆分為多行
data2_1 =data2[['類目','最適場景']] data2_1['類目1'] = data2_1['類目'] data2_1 = data2_1.drop(['類目1'], axis=1).join(data2_1['類目1'].str.split(',', expand=True).stack().reset_index(level=1, drop=True).rename('類目_new')) print(data2_1.head())2、便于后面的統計,對原始數據進行去重處理,得到最新的數據
data2_1 =data2_1[['最適場景','類目_new']] data2_1.drop_duplicates(inplace =True) #對數據進行去重- 統計最適場景的類目數
- 統計最適場景的類目組合
?至此,已經完成了這個數據需求。
總結一下:
在這個數據需求里面最重要的兩點,一個是數據的拆分;一個是數據的合并。
總結
以上是生活随笔為你收集整理的pandas 将一行拆分为多行,将多行合并为一行的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php gprs发送指令,GPRS DT
- 下一篇: 默纳克系统电梯服务器怎么封超载,默纳克系