簡體   English   中英

將Pandas數據框轉換為序列

[英]Convert pandas dataframe to series

有沒有一種方法可以將熊貓數據框轉換為具有多索引的序列? 數據框的列也可以是多索引的。

以下有效,但僅適用於帶有標簽的多重索引。

In [163]: d
Out[163]:

a  0     1
b  0  1  0  1
a  0  0  0  0
b  1  2  3  4
c  2  4  6  8

In [164]: d.stack(d.columns.names)
Out[164]:

   a  b
a  0  0    0
      1    0
   1  0    0
      1    0
b  0  0    1
      1    2
   1  0    3
      1    4
c  0  0    2
      1    4
   1  0    6
      1    8
dtype: int64

我想你可以使用nlevels用於查找lengthlevelsMultiIndex ,然后創建rangestack

print (d.columns.nlevels)
2

#for python 3 add `list`
print (list(range(d.columns.nlevels)))
[0, 1]

print (d.stack(list(range(d.columns.nlevels))))
   a  b
a  0  0    0
      1    0
   1  0    0
      1    0
b  0  0    1
      1    2
   1  0    3
      1    4
c  0  0    2
      1    4
   1  0    6
      1    8
dtype: int64

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM