Don*_*n P 4 python dataframe pandas
我有一个 Pandas 数据框,其中一列是一个列表。我想扩展这个列表。
我怎样才能做到这一点?
首先:
0 [{ first: 'jon', last: 'McSmith' }, { first: 'Jennifer', last: 'Foobar'}]
1 [{ first: 'dan', last: 'Raizman' }, { first: 'Alden', last: 'Lowe'}]
Name: players, dtype: object
Run Code Online (Sandbox Code Playgroud)
结尾:
first last
--------------------------
0 Jon McSmith
1 Jennifer Foobar
2 Dan Raizman
3 Alden Lowe
Run Code Online (Sandbox Code Playgroud)
用于水平np.hstack堆叠列中的列表players并创建一个新的数据框:
df1 = pd.DataFrame(np.hstack(df['players']).tolist())
Run Code Online (Sandbox Code Playgroud)
或者使用Series.explode(在熊猫版本 >= 中可用0.25),
df1 = pd.DataFrame(df['players'].explode().tolist())
Run Code Online (Sandbox Code Playgroud)
使用itertools.chain@cs95 建议的另一种选择
from itertools import chain
df1 = pd.DataFrame(chain.from_iterable(df['players']))
Run Code Online (Sandbox Code Playgroud)
结果:
print(df1)
first last
0 jon McSmith
1 Jennifer Foobar
2 dan Raizman
3 Alden Lowe
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
56 次 |
| 最近记录: |