Kvo*_*the 8 python nested list pandas
所以我有一个列表如下:
aa = ['aa1', 'aa2', 'aa3', 'aa4', 'aa5']
bb = ['bb1', 'bb2', 'bb3', 'bb4']
cc = ['cc1', 'cc2', 'cc3']
Run Code Online (Sandbox Code Playgroud)
然后将其创建为嵌套列表:
nest = [aa, bb, cc]
Run Code Online (Sandbox Code Playgroud)
我想创建一个数据框如下:
aa bb cc
aa1 bb1 cc1
aa2 bb2 cc2
aa3 bb3 cc3
aa4 bb4 nan
aa5 nan nan
Run Code Online (Sandbox Code Playgroud)
我试过了:
pd.DataFrame(nest, columns=['aa', 'bb', cc'])
Run Code Online (Sandbox Code Playgroud)
但结果是,每个列表都被写成一行(而不是一列)
在zip_longest从功能itertools做到这一点:
>>> import itertools, pandas
>>> pandas.DataFrame((_ for _ in itertools.zip_longest(*nest)), columns=['aa', 'bb', 'cc'])
aa bb cc
0 aa1 bb1 cc1
1 aa2 bb2 cc2
2 aa3 bb3 cc3
3 aa4 bb4 None
4 aa5 None None
Run Code Online (Sandbox Code Playgroud)
如果您有旧版本的熊猫,您可能需要包装zip_longest在列表构造函数中。在较旧的 Python 上,您可能需要调用izip_longest而不是zip_longest.
| 归档时间: |
|
| 查看次数: |
5515 次 |
| 最近记录: |