在 pandas 中旋转数据框会在列上创建令人讨厌的索引。 reset_index() 似乎并没有解决这个问题。有人可以帮助我继续吗?下面列出了代码库和我当前看到的内容
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
当我重置pivot_products上的索引时,它提供了
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
我真的不希望此处显示存储列 - 它不会捕获任何相关数据并最终保存垃圾值。有什么想法吗?
最佳答案
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
关于python - pandas 中的数据透视会产生索引问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47290942/