2017-11-14 12 views
1

pandasでデータフレームをピボットすると、その列に迷惑なインデックスが作成されます。 reset_index()は問題を取り除かないようです。誰かが私の手助けをしてくれますか?私はpivot_productsにインデックスをリセットしたときにコードベースと私は現在、このコードブロックを実行pandasのピボットがインデックス作成の問題を作成する

import pandas as pd 

products = pd.DataFrame({'category': ['Cleaning', 'Cleaning', 'Entertainment', 'Entertainment', 'Tech', 'Tech'], 
        'store': ['Walmart', 'Dia', 'Walmart', 'Fnac', 'Dia','Walmart'], 
        'price':[11.42, 23.50, 19.99, 15.95, 55.75, 111.55], 
        'testscore': [4, 3, 5, 7, 5, 8]}) 

pivot_products = products.pivot(index='category', columns='store', values='price') 

print(pivot_products) 

の下に表示されている参照が

store   Dia Fnac Walmart 
category        
Cleaning  23.50 NaN 11.42 
Entertainment NaN 15.95 19.99 
Tech   55.75 NaN 111.55 

として出力を提供し、それは本当に

store  category Dia Fnac Walmart 
0   Cleaning 23.50 NaN 11.42 
1  Entertainment NaN 15.95 19.99 
2    Tech 55.75 NaN 111.55 

Iを提供しますここに表示されているストア列は必要ありません。関連するデータは取得されず、ガベージ値が保持されます。何か案は?

+1

ストアを使用してください。また、あなたのカラム名... – Wen

+1

で、ピボットする方法の詳細については、https://stackoverflow.com/a/47152692/2336654を参照してください。列名をIndexオブジェクトの名前として配置する方法に特に注意してください。 – piRSquared

答えて

2

storeは列ではありません。これはcolumnsオブジェクトの名前です。 pd.DataFrame.rename_axis

pivot_products.rename_axis(None, 1) 

       Dia Fnac Walmart 
category        
Cleaning  23.50 NaN 11.42 
Entertainment NaN 15.95 19.99 
Tech   55.75 NaN 111.55 
+0

ありがとうございました。これは、最後の日のためにナットを運転しています – Usernamenotfound

+0

これは、reset_index()と組み合わせて、最終出力に店舗が表示されないようにします – Usernamenotfound

+0

あなたは大歓迎です! – piRSquared

関連する問題