![](/img/trans.png)
[英]How do I create pandas DataFrame (with index or multiindex) from list of namedtuple instances?
[英]How do I combine data from a Pandas DataFrame with a multiindex into a list
I have a Pandas dataframe with a multiindex, the result of a pivot (as in the pivot pandas function description)
df = pd.DataFrame({'foo': ['one', 'one', 'one', 'two', 'two',
'two'],
'bar': ['A', 'B', 'C', 'A', 'B', 'C'],
'baz': [1, 2, 3, 4, 5, 6],
'zoo': ['x', 'y', 'z', 'q', 'w', 't']})
df
foo bar baz zoo
0 one A 1 x
1 one B 2 y
2 one C 3 z
3 two A 4 q
4 two B 5 w
5 two C 6 t
dp = df.pivot(index='foo', columns='bar', values=['baz', 'zoo'])
dp
baz zoo
bar A B C A B C
foo
one 1 2 3 x y z
two 4 5 6 q w t
我想讓它看起來像這樣:
bar A B C
foo
one [1,x] [2,y] [3,z]
two [4,q] [5,w] [6,t]
0 級索引中的數據在哪里組合在一個列表中......有什么想法可以做到這一點嗎? 試過 agg(list) 但這沒有用......
一種選擇是先組合列baz
和zoo
,然后組合 pivot 表:
df['combined'] = list(zip(df.baz, df.zoo))
df.pivot('foo', 'bar', 'combined')
#bar A B C
#foo
#one (1, x) (2, y) (3, z)
#two (4, q) (5, w) (6, t)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.