如何操作以下数据框,使列成为索引,而不是多索引:
df = pandas.DataFrame([
{'col_1': 'A', 'col_2': 'A', 'value': 1},
{'col_1': 'A', 'col_2': 'B', 'value': 1},
{'col_1': 'A', 'col_2': 'C', 'value': 1},
{'col_1': 'B', 'col_2': 'A', 'value': 1},
{'col_1': 'B', 'col_2': 'B', 'value': 1},
{'col_1': 'B', 'col_2': 'C', 'value': 1},
]).set_index(['col_1', 'col_2']).unstack()
这使得:
value
col_2 A B C
col_1
A 1 1 1
B 1 1 1
但是,我想:
col_1 A B C
A 1 1 1
B 1 1 1
我知道我可以用.loc
来达到一半:
df.loc[:, 'value']
这使得:
col_2 A B C
col_1
A 1 1 1
B 1 1 1
然而,我看不到下一步
你可以做:
输出
即数据帧
unstack
您可以更改为series
您看到的是驻留在数据帧的
index
和columns
属性中的pandas.Index
对象的名称。要保留显示的对象,需要在columns
属性中去掉pandas.Index
对象的名称为了更进一步,您确实需要使用
reset_index
从index
中删除col_1
相关问题 更多 >
编程相关推荐