**的長寬轉換
**長寬轉換也是一種透視表操作
df.pivot()
將 一張長表 轉為 多張寬表
pd.melt()
將 多張寬表 轉為 一張長表
二者互為逆操作
pivot和pivot_table的區別
pivot轉換後,如果表索引有重複值會直接出錯
pivot_table轉換後,如果表索引有重複值會聚合為乙個輸出,不會出錯
如果資料不重複,pivot_table得到的結果和pivot一致
pivot_table更常用
df_test = pd.dataframe()
# 可看性不好
dfx = pd.melt(df2) # 將無論多少列轉為2列,1列是原列索引,1列是原值
當使用pandas.melt,最好指明哪些列是分組指標
指定key列是唯一分組指標,其它列是資料值
melted = pd.melt(df2, ['key'])
*** = melted.pivot('key', 'variable', 'value').reset_index() # reset_index()將行索引轉為普通列,set_index()普通列轉為行索引
***.columns.name = '' # 去除列索引name
# 還可以指定哪些列參與合併
pd.melt(df2, ['key'])
pd.melt(df2, ['key'], value_vars=['a', 'b']) # 沒有c
pandas.melt可以不用分組指標
pd.melt(df2, value_vars=['a', 'b'])
綜合練習:同時指定多個分組指標,和參與列
pd.melt(df2, ['key','a']) # 指定多個分組指標
pd.melt(df2, ['key','a'], value_vars=['b']) # 指定多個分組指標和參與列
XP系統的Python3 4 4安裝pandas
要使用tushare庫,但這個庫需要其他庫的支援,如lxml和pandas 前幾個庫還好,pandas在pip的時候總是出現紅字報錯,歸結原因差不多是說你當前的系統 目前安裝的python版本和pip下來的這個pandas安裝包不相容。首先切換目錄 cd c python34 scriptspyth...
python轉換字元 Python字元轉換
python提供了ord和chr兩個內建的函式,用於字元與ascii碼之間的轉換。如 print ord a print chr 97 a下面我們可以開始來設計我們的大小寫轉換的程式了 複製 如下 usr bin env python coding utf 8 def ucasechar ch if...
型別轉換表
發生擴大轉換。當乙個型別的值轉換為相等或更大範圍的另一種型別時。收縮轉換時,會發生乙個型別的值轉換為較小的另一種型別的值時。本主題中的表闡釋了兩種轉換型別顯示的行為。擴大轉換 下表描述了可以執行,不會丟失資訊的擴大轉換。型別可以轉換,而不會丟失資料 byte uint16,int16,uint32,...