为数据框创建多列索引
Creating Multi -Column Index for a Dataframe
是否可以将单级列数据框更改为多列数据框?如果我们有这样的数据框,
import pandas as pd
df = pd.DataFrame({
'a': [0, 1, 2, 3],
'b': [4, 5, 6, 7],
'c': [3, 5, 6, 2],
'd': [1, 5, 7, 0],
})
我们可以像下面这样更改它的列名吗?。所以,简而言之,我想做的是在不更改数据框值的情况下拥有 2 级列索引。
A B
a b c d
0 0 4 3 1
1 1 5 5 5
2 2 6 6 7
3 3 7 2 0
有什么帮助吗?
IIUC,使用pd.MultiIndex.from_tuples创建多索引头并赋值给dataframe.columns:
df = pd.DataFrame({
'a': [0, 1, 2, 3],
'b': [4, 5, 6, 7],
'a2': [3, 5, 6, 2],
'b2': [1, 5, 7, 0],
})
df.columns=pd.MultiIndex.from_tuples([('A','a'),('A','b'),('B','c'),('B','d')])
df
输出:
A B
a b c d
0 0 4 3 1
1 1 5 5 5
2 2 6 6 7
3 3 7 2 0
是否可以将单级列数据框更改为多列数据框?如果我们有这样的数据框,
import pandas as pd
df = pd.DataFrame({
'a': [0, 1, 2, 3],
'b': [4, 5, 6, 7],
'c': [3, 5, 6, 2],
'd': [1, 5, 7, 0],
})
我们可以像下面这样更改它的列名吗?。所以,简而言之,我想做的是在不更改数据框值的情况下拥有 2 级列索引。
A B
a b c d
0 0 4 3 1
1 1 5 5 5
2 2 6 6 7
3 3 7 2 0
有什么帮助吗?
IIUC,使用pd.MultiIndex.from_tuples创建多索引头并赋值给dataframe.columns:
df = pd.DataFrame({
'a': [0, 1, 2, 3],
'b': [4, 5, 6, 7],
'a2': [3, 5, 6, 2],
'b2': [1, 5, 7, 0],
})
df.columns=pd.MultiIndex.from_tuples([('A','a'),('A','b'),('B','c'),('B','d')])
df
输出:
A B
a b c d
0 0 4 3 1
1 1 5 5 5
2 2 6 6 7
3 3 7 2 0