2
我对熊猫有问题。我有一个包含三列的数据框:'id1','id2','amount'。从另一个创建一个数据帧(使用数据透视表)
由此,我想创建另一个数据帧,其索引是'id1',其中的列是'id2',并且这些单元格包含相应的'数量'。
我们去一个例子:
import pandas as pd
df = pd.DataFrame([['first_person','first_item',10],['first_person','second_item',6],['second_person','first_item',18],['second_person','second_item',36]],columns = ['id1','id2','amount'])
这将产生:
id1 id2 amount
0 first_person first_item 10
1 first_person second_item 6
2 second_person first_item 18
3 second_person second_item 36
而从这个我想创建第二个数据帧是:
first_item second_item
first_person 10 6
second_person 18 36
当然,在发布之前我已经研究了一段时间,但是我为此设法做了一个双重'for循环'...... Whic我的数据帧的大小无法计算。你会知道如何以更pythonic的方式做到这一点? (这显然是远远比更有效“的”循环!)
这似乎完全适合我的需要!执行重命名索引问题。事实上,'.rename_axis(None)'方法返回以下错误:'必须通过索引来重命名'(如果它很重要,我在Python 2.7下)。 – ysearka
“pandas”的版本是什么? 'print pd.show_versions()' – jezrael
0.17.1这解释了为什么rename_axis不起作用。 – ysearka