数组列表中的python pandas dataframe

Sim*_*ley 2 python dataframe pandas

我有这样的清单:

[[None, 'ASK', 'BID'], ['4Y', 343.545, 344.621],['7Y', 0.016, 0.015],['9Y', 99.9, 99.8]]

我想这样将其转换为数据框:

'4Y' | 'ASK' | 343.545 '4Y' | 'BID' | 344.621 '7Y' | 'ASK' | 0.016 '7Y' | 'BID' | 0.015 '9Y' | 'ASK' | 99.9 '9Y' | 'BID' | 99.8

我已经尝试过各种“循环”方式,但是它们看起来非常丑陋且效率低下。

And*_* L. 5

假设l是您的清单。构造dfmelt

df = pd.DataFrame(l[1:], columns=l[0])
df.rename({None: 'Year'}, axis=1).melt('Year').sort_values('Year')

Out[477]:
  Year variable    value
0   4Y      ASK  343.545
3   4Y      BID  344.621
1   7Y      ASK    0.016
4   7Y      BID    0.015
2   9Y      ASK   99.900
5   9Y      BID   99.800
Run Code Online (Sandbox Code Playgroud)